diff options
author | Alexander Kanavin <alex.kanavin@gmail.com> | 2020-02-23 23:11:11 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2020-02-25 10:41:22 +0000 |
commit | 57669961302978642df4e0c9f3b1c3c3ce680bbb (patch) | |
tree | 50e1ff8a10cd04b5e23166a5bedc5914e41bd663 /meta/recipes-graphics | |
parent | 1a5a9d2f03834d0adefdd240b045152a65694c0e (diff) | |
download | poky-57669961302978642df4e0c9f3b1c3c3ce680bbb.tar.gz |
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>
Diffstat (limited to 'meta/recipes-graphics')
-rw-r--r-- | meta/recipes-graphics/wayland/wayland/run-ptest | 17 | ||||
-rw-r--r-- | meta/recipes-graphics/wayland/wayland_1.18.0.bb | 14 |
2 files changed, 30 insertions, 1 deletions
diff --git a/meta/recipes-graphics/wayland/wayland/run-ptest b/meta/recipes-graphics/wayland/wayland/run-ptest new file mode 100644 index 0000000000..7e8d9de046 --- /dev/null +++ b/meta/recipes-graphics/wayland/wayland/run-ptest | |||
@@ -0,0 +1,17 @@ | |||
1 | #!/bin/sh | ||
2 | |||
3 | export WAYLAND_SCANNER=wayland-scanner | ||
4 | export TEST_DATA_DIR=tests/data | ||
5 | export TEST_OUTPUT_DIR=tests/output | ||
6 | export SED=sed | ||
7 | export WAYLAND_EGL_LIB=/usr/lib/libwayland-egl.so.1 | ||
8 | export NM=nm | ||
9 | |||
10 | for i in `ls tests/*-test tests/wayland-egl-symbols-check tests/scanner-test.sh`; do | ||
11 | $i | ||
12 | if [ $? -eq 0 ]; then | ||
13 | echo "PASS: $i" | ||
14 | else | ||
15 | echo "FAIL: $i" | ||
16 | fi | ||
17 | done | ||
diff --git a/meta/recipes-graphics/wayland/wayland_1.18.0.bb b/meta/recipes-graphics/wayland/wayland_1.18.0.bb index 5dc31163da..00be3aac27 100644 --- a/meta/recipes-graphics/wayland/wayland_1.18.0.bb +++ b/meta/recipes-graphics/wayland/wayland_1.18.0.bb | |||
@@ -13,6 +13,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=b31d8f53b6aaf2b4985d7dd7810a70d1 \ | |||
13 | DEPENDS = "expat libffi wayland-native" | 13 | DEPENDS = "expat libffi wayland-native" |
14 | 14 | ||
15 | SRC_URI = "https://wayland.freedesktop.org/releases/${BPN}-${PV}.tar.xz \ | 15 | SRC_URI = "https://wayland.freedesktop.org/releases/${BPN}-${PV}.tar.xz \ |
16 | file://run-ptest \ | ||
16 | file://0002-meson.build-find-the-native-wayland-scanner-directly.patch \ | 17 | file://0002-meson.build-find-the-native-wayland-scanner-directly.patch \ |
17 | file://0002-Do-not-hardcode-the-path-to-wayland-scanner.patch \ | 18 | file://0002-Do-not-hardcode-the-path-to-wayland-scanner.patch \ |
18 | file://0001-build-Fix-strndup-detection-on-MinGW.patch \ | 19 | file://0001-build-Fix-strndup-detection-on-MinGW.patch \ |
@@ -23,7 +24,7 @@ SRC_URI[sha256sum] = "4675a79f091020817a98fd0484e7208c8762242266967f55a67776936c | |||
23 | 24 | ||
24 | UPSTREAM_CHECK_URI = "https://wayland.freedesktop.org/releases.html" | 25 | UPSTREAM_CHECK_URI = "https://wayland.freedesktop.org/releases.html" |
25 | 26 | ||
26 | inherit meson pkgconfig | 27 | inherit meson pkgconfig ptest |
27 | 28 | ||
28 | PACKAGECONFIG ??= "dtd-validation" | 29 | PACKAGECONFIG ??= "dtd-validation" |
29 | PACKAGECONFIG[dtd-validation] = "-Ddtd_validation=true,-Ddtd_validation=false,libxml2,," | 30 | PACKAGECONFIG[dtd-validation] = "-Ddtd_validation=true,-Ddtd_validation=false,libxml2,," |
@@ -39,6 +40,15 @@ do_install_append_class-native() { | |||
39 | -i ${D}/${datadir}/aclocal/wayland-scanner.m4 | 40 | -i ${D}/${datadir}/aclocal/wayland-scanner.m4 |
40 | } | 41 | } |
41 | 42 | ||
43 | do_install_ptest() { | ||
44 | mkdir -p ${D}${PTEST_PATH}/tests/data | ||
45 | cp -rf ${B}/tests/*-test ${B}/tests/*-checker ${D}${PTEST_PATH}/tests | ||
46 | cp -rf ${B}/tests/*-checker ${D}${PTEST_PATH} | ||
47 | cp -rf ${S}/tests/scanner-test.sh ${D}${PTEST_PATH}/tests | ||
48 | cp -rf ${S}/tests/data/* ${D}${PTEST_PATH}/tests/data/ | ||
49 | cp -rf ${S}/egl/wayland-egl-symbols-check ${D}${PTEST_PATH}/tests/ | ||
50 | } | ||
51 | |||
42 | sysroot_stage_all_append_class-target () { | 52 | sysroot_stage_all_append_class-target () { |
43 | rm ${SYSROOT_DESTDIR}/${datadir}/aclocal/wayland-scanner.m4 | 53 | rm ${SYSROOT_DESTDIR}/${datadir}/aclocal/wayland-scanner.m4 |
44 | cp ${STAGING_DATADIR_NATIVE}/aclocal/wayland-scanner.m4 ${SYSROOT_DESTDIR}/${datadir}/aclocal/ | 54 | cp ${STAGING_DATADIR_NATIVE}/aclocal/wayland-scanner.m4 ${SYSROOT_DESTDIR}/${datadir}/aclocal/ |
@@ -48,3 +58,5 @@ FILES_${PN} = "${libdir}/*${SOLIBS}" | |||
48 | FILES_${PN}-dev += "${bindir} ${datadir}/wayland" | 58 | FILES_${PN}-dev += "${bindir} ${datadir}/wayland" |
49 | 59 | ||
50 | BBCLASSEXTEND = "native nativesdk" | 60 | BBCLASSEXTEND = "native nativesdk" |
61 | |||
62 | RDEPENDS_${PN}-ptest += "binutils sed" | ||