aboutsummaryrefslogtreecommitdiffstats
path: root/meta-oe
diff options
context:
space:
mode:
authorBartosz Golaszewski <brgl@bgdev.pl>2021-06-02 16:14:59 +0200
committerKhem Raj <raj.khem@gmail.com>2021-06-04 07:08:13 -0700
commit2530ace540da5a79e8a0e352f353be7c4a92bb53 (patch)
tree933e239e856fe7494ae149b7952649e2ace27c4a /meta-oe
parent66561c713ed8cdfa7a384eb0ba2c7a211ab5ba1c (diff)
downloadmeta-openembedded-2530ace540da5a79e8a0e352f353be7c4a92bb53.tar.gz
libgpiod: ptest: run all test-suites if possible
We have four test-suites total in libgpiod: for the core C library, gpio-tools and for C++ and Python bindings. Modify the recipe to install all of them depending on build settings and make run-ptest execute them if available. Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl> Signed-off-by: Khem Raj <raj.khem@gmail.com>
Diffstat (limited to 'meta-oe')
-rw-r--r--meta-oe/recipes-support/libgpiod/files/run-ptest21
-rw-r--r--meta-oe/recipes-support/libgpiod/libgpiod_1.6.3.bb20
2 files changed, 33 insertions, 8 deletions
diff --git a/meta-oe/recipes-support/libgpiod/files/run-ptest b/meta-oe/recipes-support/libgpiod/files/run-ptest
index 3ad737dfc8..60c661fc10 100644
--- a/meta-oe/recipes-support/libgpiod/files/run-ptest
+++ b/meta-oe/recipes-support/libgpiod/files/run-ptest
@@ -1,12 +1,19 @@
#!/bin/sh
-testbin="gpiod-test"
+testbins="gpiod-test gpio-tools-test gpiod-cxx-test gpiod_py_test.py"
+
ptestdir=$(dirname "$(readlink -f "$0")")
cd $ptestdir/tests
-./$testbin > ./$testbin.out
-if [ $? -ne 0 ]; then
- echo "FAIL: $testbin"
-else
- echo "PASS: $testbin"
-fi
+for testbin in $testbins; do
+ if test -e ./$testbin; then
+ ./$testbin > ./$testbin.out
+ if [ $? -ne 0 ]; then
+ echo "FAIL: $testbin"
+ else
+ echo "PASS: $testbin"
+ fi
+ else
+ echo "SKIP: $testbin"
+ fi
+done
diff --git a/meta-oe/recipes-support/libgpiod/libgpiod_1.6.3.bb b/meta-oe/recipes-support/libgpiod/libgpiod_1.6.3.bb
index c0ebb8aa5a..874453fbd6 100644
--- a/meta-oe/recipes-support/libgpiod/libgpiod_1.6.3.bb
+++ b/meta-oe/recipes-support/libgpiod/libgpiod_1.6.3.bb
@@ -53,5 +53,23 @@ PACKAGECONFIG_append = " ${@bb.utils.contains('DISTRO_FEATURES', 'ptest', 'tests
do_install_ptest() {
install -d ${D}${PTEST_PATH}/tests
- cp ${B}/tests/.libs/gpiod-test ${D}${PTEST_PATH}/tests/
+
+ # These are the core C library tests
+ install -m 0755 ${B}/tests/.libs/gpiod-test ${D}${PTEST_PATH}/tests/
+
+ # Tools are always built so let's always install them for ptest even if
+ # we're not selecting libgpiod-tools.
+ install -m 0755 ${S}/tools/gpio-tools-test ${D}${PTEST_PATH}/tests/
+ install -m 0755 ${S}/tools/gpio-tools-test.bats ${D}${PTEST_PATH}/tests/
+ for tool in ${FILES_${PN}-tools}; do
+ install ${B}/tools/.libs/$(basename $tool) ${D}${PTEST_PATH}/tests/
+ done
+
+ if ${@bb.utils.contains('PACKAGECONFIG', 'cxx', 'true', 'false', d)}; then
+ install -m 0755 ${B}/bindings/cxx/tests/.libs/gpiod-cxx-test ${D}${PTEST_PATH}/tests/
+ fi
+
+ if ${@bb.utils.contains('PACKAGECONFIG', 'python3', 'true', 'false', d)}; then
+ install -m 0755 ${S}/bindings/python/tests/gpiod_py_test.py ${D}${PTEST_PATH}/tests/
+ fi
}