mirror of
https://git.yoctoproject.org/poky
synced 2026-03-17 04:39:40 +01:00
wayland: add ptest
Sadly, meson makes it very difficult to install tests: the test configuration is written into host-specific binary files, which can't be transferred to the target. (unlike autotools where at least everything happens via Makefiles which can be patched and tweaked via sed and env vars) So the configuration has to be entirely recreated in shell. I managed this for wayland, but weston proved too difficult. I had filed bugs asking upstream to make the tests installable: https://gitlab.freedesktop.org/wayland/wayland/issues/146 https://gitlab.freedesktop.org/wayland/weston/issues/368 (From OE-Core rev: 296ee10bb8491278f050fb9d55f42b0bcf663382) Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
1a5a9d2f03
commit
5766996130
@@ -47,6 +47,7 @@ PTESTS_FAST = "\
|
||||
quilt-ptest \
|
||||
sed-ptest \
|
||||
slang-ptest \
|
||||
wayland-ptest \
|
||||
zlib-ptest \
|
||||
"
|
||||
|
||||
|
||||
17
meta/recipes-graphics/wayland/wayland/run-ptest
Normal file
17
meta/recipes-graphics/wayland/wayland/run-ptest
Normal file
@@ -0,0 +1,17 @@
|
||||
#!/bin/sh
|
||||
|
||||
export WAYLAND_SCANNER=wayland-scanner
|
||||
export TEST_DATA_DIR=tests/data
|
||||
export TEST_OUTPUT_DIR=tests/output
|
||||
export SED=sed
|
||||
export WAYLAND_EGL_LIB=/usr/lib/libwayland-egl.so.1
|
||||
export NM=nm
|
||||
|
||||
for i in `ls tests/*-test tests/wayland-egl-symbols-check tests/scanner-test.sh`; do
|
||||
$i
|
||||
if [ $? -eq 0 ]; then
|
||||
echo "PASS: $i"
|
||||
else
|
||||
echo "FAIL: $i"
|
||||
fi
|
||||
done
|
||||
@@ -13,6 +13,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=b31d8f53b6aaf2b4985d7dd7810a70d1 \
|
||||
DEPENDS = "expat libffi wayland-native"
|
||||
|
||||
SRC_URI = "https://wayland.freedesktop.org/releases/${BPN}-${PV}.tar.xz \
|
||||
file://run-ptest \
|
||||
file://0002-meson.build-find-the-native-wayland-scanner-directly.patch \
|
||||
file://0002-Do-not-hardcode-the-path-to-wayland-scanner.patch \
|
||||
file://0001-build-Fix-strndup-detection-on-MinGW.patch \
|
||||
@@ -23,7 +24,7 @@ SRC_URI[sha256sum] = "4675a79f091020817a98fd0484e7208c8762242266967f55a67776936c
|
||||
|
||||
UPSTREAM_CHECK_URI = "https://wayland.freedesktop.org/releases.html"
|
||||
|
||||
inherit meson pkgconfig
|
||||
inherit meson pkgconfig ptest
|
||||
|
||||
PACKAGECONFIG ??= "dtd-validation"
|
||||
PACKAGECONFIG[dtd-validation] = "-Ddtd_validation=true,-Ddtd_validation=false,libxml2,,"
|
||||
@@ -39,6 +40,15 @@ do_install_append_class-native() {
|
||||
-i ${D}/${datadir}/aclocal/wayland-scanner.m4
|
||||
}
|
||||
|
||||
do_install_ptest() {
|
||||
mkdir -p ${D}${PTEST_PATH}/tests/data
|
||||
cp -rf ${B}/tests/*-test ${B}/tests/*-checker ${D}${PTEST_PATH}/tests
|
||||
cp -rf ${B}/tests/*-checker ${D}${PTEST_PATH}
|
||||
cp -rf ${S}/tests/scanner-test.sh ${D}${PTEST_PATH}/tests
|
||||
cp -rf ${S}/tests/data/* ${D}${PTEST_PATH}/tests/data/
|
||||
cp -rf ${S}/egl/wayland-egl-symbols-check ${D}${PTEST_PATH}/tests/
|
||||
}
|
||||
|
||||
sysroot_stage_all_append_class-target () {
|
||||
rm ${SYSROOT_DESTDIR}/${datadir}/aclocal/wayland-scanner.m4
|
||||
cp ${STAGING_DATADIR_NATIVE}/aclocal/wayland-scanner.m4 ${SYSROOT_DESTDIR}/${datadir}/aclocal/
|
||||
@@ -48,3 +58,5 @@ FILES_${PN} = "${libdir}/*${SOLIBS}"
|
||||
FILES_${PN}-dev += "${bindir} ${datadir}/wayland"
|
||||
|
||||
BBCLASSEXTEND = "native nativesdk"
|
||||
|
||||
RDEPENDS_${PN}-ptest += "binutils sed"
|
||||
|
||||
Reference in New Issue
Block a user