From 353382f6c7f3904a11e0a73a1b17eff4963bdcb9 Mon Sep 17 00:00:00 2001 From: Denys Dmytriyenko Date: Thu, 28 Jan 2021 18:01:43 -0500 Subject: wayland: upgrade 1.18.0 -> 1.19.0 This release mostly contains bug fixes and minor protocol updates. Related patches were rebased and backported patches dropped. Signed-off-by: Denys Dmytriyenko Signed-off-by: Richard Purdie --- ...0001-build-Fix-strndup-detection-on-MinGW.patch | 5 +- ...-add-missing-dependencies-on-protocol-hea.patch | 115 --------------------- ...-not-hardcode-the-path-to-wayland-scanner.patch | 23 +++-- ...-find-the-native-wayland-scanner-directly.patch | 13 +-- meta/recipes-graphics/wayland/wayland_1.18.0.bb | 62 ----------- meta/recipes-graphics/wayland/wayland_1.19.0.bb | 60 +++++++++++ 6 files changed, 83 insertions(+), 195 deletions(-) delete mode 100644 meta/recipes-graphics/wayland/wayland/0001-meson-tests-add-missing-dependencies-on-protocol-hea.patch delete mode 100644 meta/recipes-graphics/wayland/wayland_1.18.0.bb create mode 100644 meta/recipes-graphics/wayland/wayland_1.19.0.bb (limited to 'meta/recipes-graphics/wayland') diff --git a/meta/recipes-graphics/wayland/wayland/0001-build-Fix-strndup-detection-on-MinGW.patch b/meta/recipes-graphics/wayland/wayland/0001-build-Fix-strndup-detection-on-MinGW.patch index c2ceae4a47..ad1063b2c3 100644 --- a/meta/recipes-graphics/wayland/wayland/0001-build-Fix-strndup-detection-on-MinGW.patch +++ b/meta/recipes-graphics/wayland/wayland/0001-build-Fix-strndup-detection-on-MinGW.patch @@ -1,4 +1,4 @@ -From e6783c99f051c6d8252db5f388d805cef0e16357 Mon Sep 17 00:00:00 2001 +From 6a6223a8e217664a348835e92d5a602f50e18b2c Mon Sep 17 00:00:00 2001 From: Joshua Watt Date: Thu, 20 Feb 2020 15:20:45 -0600 Subject: [PATCH] build: Fix strndup detection on MinGW @@ -13,10 +13,13 @@ See: https://github.com/mesonbuild/meson/issues/3672 Signed-off-by: Joshua Watt Upstream-Status: Submitted [https://gitlab.freedesktop.org/wayland/wayland/merge_requests/63] + --- meson.build | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) +diff --git a/meson.build b/meson.build +index 11c35fa..80729d0 100644 --- a/meson.build +++ b/meson.build @@ -36,11 +36,11 @@ have_funcs = [ diff --git a/meta/recipes-graphics/wayland/wayland/0001-meson-tests-add-missing-dependencies-on-protocol-hea.patch b/meta/recipes-graphics/wayland/wayland/0001-meson-tests-add-missing-dependencies-on-protocol-hea.patch deleted file mode 100644 index 61de0e04e8..0000000000 --- a/meta/recipes-graphics/wayland/wayland/0001-meson-tests-add-missing-dependencies-on-protocol-hea.patch +++ /dev/null @@ -1,115 +0,0 @@ -From b2c74f6a3dbe0aee2413800837314136947a4985 Mon Sep 17 00:00:00 2001 -From: Jan Beich -Date: Sat, 15 Feb 2020 02:03:45 +0000 -Subject: [PATCH] meson/tests: add missing dependencies on protocol headers - -In file included from ../tests/connection-test.c:43: -In file included from ../tests/test-compositor.h:30: -../src/wayland-client.h:40:10: fatal error: 'wayland-client-protocol.h' file not found - #include "wayland-client-protocol.h" - ^~~~~~~~~~~~~~~~~~~~~~~~~~~ -In file included from ../tests/display-test.c:45: -In file included from ../src/wayland-server.h:104: -src/wayland-server-protocol.h:4454:2: error: unterminated /* comment - /** - ^ -In file included from ../tests/cpp-compile-test.cpp:2: -In file included from src/wayland-server-protocol.h:8: -In file included from ../src/wayland-server.h:104: -src/wayland-server-protocol.h:3:2: error: unterminated conditional directive - #ifndef WAYLAND_SERVER_PROTOCOL_H - ^ -../tests/headers-protocol-test.c:33:2: error: including wayland-server-protocol.h did not include wayland-server.h! - #error including wayland-server-protocol.h did not include wayland-server.h! - ^ -In file included from ../tests/headers-protocol-test.c:26: -In file included from src/wayland-client-protocol.h:8: -In file included from ../src/wayland-client.h:40: -src/wayland-client-protocol.h:1358:2: error: unterminated conditional directive - #ifndef WL_SHM_FORMAT_ENUM - ^ -In file included from ../tests/protocol-logger-test.c:34: -In file included from ../src/wayland-client.h:40: -src/wayland-client-protocol.h:2613:1: error: unterminated /* comment -/** -^ -../tests/resources-test.c:49:36: error: use of undeclared identifier 'wl_seat_interface' - res = wl_resource_create(client, &wl_seat_interface, 4, 0); - ^ -Upstream-Status: Backport -Signed-off-by: Alexander Kanavin ---- - tests/meson.build | 26 ++++++++++++++++++-------- - 1 file changed, 18 insertions(+), 8 deletions(-) - -diff --git a/tests/meson.build b/tests/meson.build -index c28a2a3..f1af7b4 100644 ---- a/tests/meson.build -+++ b/tests/meson.build -@@ -69,7 +69,7 @@ test( - executable( - 'cpp-compile-test', - 'cpp-compile-test.cpp', -- wayland_server_protocol_core_h, -+ wayland_server_protocol_h, - include_directories: src_inc - ) - ) -@@ -91,17 +91,25 @@ tests = { - 'array-test': [], - 'client-test': [ wayland_server_protocol_h ], - 'display-test': [ -+ wayland_client_protocol_h, -+ wayland_server_protocol_h, - tests_server_protocol_h, - tests_client_protocol_c, - tests_protocol_c, - ], -- 'connection-test': [ wayland_server_protocol_h ], -+ 'connection-test': [ -+ wayland_client_protocol_h, -+ wayland_server_protocol_h, -+ ], - 'event-loop-test': [ wayland_server_protocol_h ], - 'fixed-test': [], - 'interface-test': [ wayland_client_protocol_h ], - 'list-test': [], - 'map-test': [], -- 'sanity-test' : [ wayland_server_protocol_h ], -+ 'sanity-test' : [ -+ wayland_client_protocol_h, -+ wayland_server_protocol_h, -+ ], - 'socket-test': [ - wayland_client_protocol_h, - wayland_server_protocol_h, -@@ -116,7 +124,7 @@ tests = { - files('../src/wayland-server.c'), - wayland_server_protocol_h, - ], -- 'resources-test': [ wayland_server_protocol_core_h ], -+ 'resources-test': [ wayland_server_protocol_h ], - 'message-test': [ - wayland_client_protocol_h, - wayland_server_protocol_h, -@@ -126,14 +134,16 @@ tests = { - wayland_server_protocol_h, - ], - 'protocol-logger-test': [ -- wayland_server_protocol_core_h, -- wayland_client_protocol_core_h, -+ wayland_client_protocol_h, -+ wayland_server_protocol_h, - ], - 'headers-test': [ -+ wayland_client_protocol_h, -+ wayland_server_protocol_h, - 'headers-protocol-test.c', -- 'headers-protocol-core-test.c', -- wayland_server_protocol_core_h, - wayland_client_protocol_core_h, -+ wayland_server_protocol_core_h, -+ 'headers-protocol-core-test.c', - ], - 'os-wrappers-test': [], - } diff --git a/meta/recipes-graphics/wayland/wayland/0002-Do-not-hardcode-the-path-to-wayland-scanner.patch b/meta/recipes-graphics/wayland/wayland/0002-Do-not-hardcode-the-path-to-wayland-scanner.patch index 2199548bdf..e3e71925b8 100644 --- a/meta/recipes-graphics/wayland/wayland/0002-Do-not-hardcode-the-path-to-wayland-scanner.patch +++ b/meta/recipes-graphics/wayland/wayland/0002-Do-not-hardcode-the-path-to-wayland-scanner.patch @@ -1,4 +1,4 @@ -From cbb28635a1079d68e62dbaa1e21791a20dbbbaf4 Mon Sep 17 00:00:00 2001 +From 3e7cd56611aeec274e48a4816bc7c21f74f15be0 Mon Sep 17 00:00:00 2001 From: Alexander Kanavin Date: Mon, 17 Feb 2020 21:46:18 +0100 Subject: [PATCH] Do not hardcode the path to wayland-scanner @@ -7,20 +7,21 @@ This results in host contamination during builds. Upstream-Status: Inappropriate [oe-core specific] Signed-off-by: Alexander Kanavin + --- src/meson.build | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/meson.build b/src/meson.build -index 294aee0..7e410fa 100644 +index 15730a3..61edbc8 100644 --- a/src/meson.build +++ b/src/meson.build -@@ -49,7 +49,7 @@ pkgconfig.generate( - 'datarootdir=' + join_paths('${prefix}', get_option('datadir')), - 'pkgdatadir=' + join_paths('${datarootdir}', meson.project_name()), - 'bindir=' + join_paths('${prefix}', get_option('bindir')), -- 'wayland_scanner=${bindir}/wayland-scanner' -+ 'wayland_scanner=wayland-scanner' - ], - filebase: 'wayland-scanner' - ) +@@ -52,7 +52,7 @@ if get_option('scanner') + 'datarootdir=' + join_paths('${prefix}', get_option('datadir')), + 'pkgdatadir=' + join_paths('${datarootdir}', meson.project_name()), + 'bindir=' + join_paths('${prefix}', get_option('bindir')), +- 'wayland_scanner=${bindir}/wayland-scanner' ++ 'wayland_scanner=wayland-scanner' + ], + filebase: 'wayland-scanner' + ) diff --git a/meta/recipes-graphics/wayland/wayland/0002-meson.build-find-the-native-wayland-scanner-directly.patch b/meta/recipes-graphics/wayland/wayland/0002-meson.build-find-the-native-wayland-scanner-directly.patch index f98037a850..11dc069147 100644 --- a/meta/recipes-graphics/wayland/wayland/0002-meson.build-find-the-native-wayland-scanner-directly.patch +++ b/meta/recipes-graphics/wayland/wayland/0002-meson.build-find-the-native-wayland-scanner-directly.patch @@ -1,4 +1,4 @@ -From 2582d2653ba80917d7bc47088e1a5f49530fddaa Mon Sep 17 00:00:00 2001 +From 98e7902a4ddcd80b61cce6f35f97907e841a5eda Mon Sep 17 00:00:00 2001 From: Alexander Kanavin Date: Sun, 16 Feb 2020 16:29:53 +0100 Subject: [PATCH] meson.build: find the native wayland-scanner directly in PATH @@ -7,19 +7,20 @@ Otherwise, meson attempts to use the target pkg-config and fails. Upstream-Status: Pending Signed-off-by: Alexander Kanavin + --- src/meson.build | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/meson.build b/src/meson.build -index 3e8c9bf..294aee0 100644 +index d91c503..15730a3 100644 --- a/src/meson.build +++ b/src/meson.build -@@ -55,8 +55,7 @@ pkgconfig.generate( - ) +@@ -59,8 +59,7 @@ if get_option('scanner') + endif - if meson.is_cross_build() -- scanner_dep = dependency('wayland-scanner', native: true, version: '>=1.14.0') + if meson.is_cross_build() or not get_option('scanner') +- scanner_dep = dependency('wayland-scanner', native: true, version: meson.project_version()) - wayland_scanner_for_build = find_program(scanner_dep.get_pkgconfig_variable('wayland_scanner')) + wayland_scanner_for_build = find_program('wayland-scanner') else diff --git a/meta/recipes-graphics/wayland/wayland_1.18.0.bb b/meta/recipes-graphics/wayland/wayland_1.18.0.bb deleted file mode 100644 index 00be3aac27..0000000000 --- a/meta/recipes-graphics/wayland/wayland_1.18.0.bb +++ /dev/null @@ -1,62 +0,0 @@ -SUMMARY = "Wayland, a protocol between a compositor and clients" -DESCRIPTION = "Wayland is a protocol for a compositor to talk to its clients \ -as well as a C library implementation of that protocol. The compositor can be \ -a standalone display server running on Linux kernel modesetting and evdev \ -input devices, an X application, or a wayland client itself. The clients can \ -be traditional applications, X servers (rootless or fullscreen) or other \ -display servers." -HOMEPAGE = "http://wayland.freedesktop.org" -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://COPYING;md5=b31d8f53b6aaf2b4985d7dd7810a70d1 \ - file://src/wayland-server.c;endline=24;md5=b8e046164a766bb1ede8ba38e9dcd7ce" - -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 \ - file://0001-meson-tests-add-missing-dependencies-on-protocol-hea.patch \ - " -SRC_URI[md5sum] = "23317697b6e3ff2e1ac8c5ba3ed57b65" -SRC_URI[sha256sum] = "4675a79f091020817a98fd0484e7208c8762242266967f55a67776936c2e294d" - -UPSTREAM_CHECK_URI = "https://wayland.freedesktop.org/releases.html" - -inherit meson pkgconfig ptest - -PACKAGECONFIG ??= "dtd-validation" -PACKAGECONFIG[dtd-validation] = "-Ddtd_validation=true,-Ddtd_validation=false,libxml2,," - -EXTRA_OEMESON = "-Ddocumentation=false" -EXTRA_OEMESON_class-native = "-Ddocumentation=false -Dlibraries=false" - -# Wayland installs a M4 macro for other projects to use, which uses the target -# pkg-config to find files. Replace pkg-config with pkg-config-native. -do_install_append_class-native() { - sed -e 's,PKG_CHECK_MODULES(.*),,g' \ - -e 's,$PKG_CONFIG,pkg-config-native,g' \ - -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/ -} - -FILES_${PN} = "${libdir}/*${SOLIBS}" -FILES_${PN}-dev += "${bindir} ${datadir}/wayland" - -BBCLASSEXTEND = "native nativesdk" - -RDEPENDS_${PN}-ptest += "binutils sed" diff --git a/meta/recipes-graphics/wayland/wayland_1.19.0.bb b/meta/recipes-graphics/wayland/wayland_1.19.0.bb new file mode 100644 index 0000000000..8f121601c4 --- /dev/null +++ b/meta/recipes-graphics/wayland/wayland_1.19.0.bb @@ -0,0 +1,60 @@ +SUMMARY = "Wayland, a protocol between a compositor and clients" +DESCRIPTION = "Wayland is a protocol for a compositor to talk to its clients \ +as well as a C library implementation of that protocol. The compositor can be \ +a standalone display server running on Linux kernel modesetting and evdev \ +input devices, an X application, or a wayland client itself. The clients can \ +be traditional applications, X servers (rootless or fullscreen) or other \ +display servers." +HOMEPAGE = "http://wayland.freedesktop.org" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=b31d8f53b6aaf2b4985d7dd7810a70d1 \ + file://src/wayland-server.c;endline=24;md5=b8e046164a766bb1ede8ba38e9dcd7ce" + +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 \ + " +SRC_URI[sha256sum] = "baccd902300d354581cd5ad3cc49daa4921d55fb416a5883e218750fef166d15" + +UPSTREAM_CHECK_URI = "https://wayland.freedesktop.org/releases.html" + +inherit meson pkgconfig ptest + +PACKAGECONFIG ??= "dtd-validation" +PACKAGECONFIG[dtd-validation] = "-Ddtd_validation=true,-Ddtd_validation=false,libxml2,," + +EXTRA_OEMESON = "-Ddocumentation=false" +EXTRA_OEMESON_class-native = "-Ddocumentation=false -Dlibraries=false" + +# Wayland installs a M4 macro for other projects to use, which uses the target +# pkg-config to find files. Replace pkg-config with pkg-config-native. +do_install_append_class-native() { + sed -e 's,PKG_CHECK_MODULES(.*),,g' \ + -e 's,$PKG_CONFIG,pkg-config-native,g' \ + -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/ +} + +FILES_${PN} = "${libdir}/*${SOLIBS}" +FILES_${PN}-dev += "${bindir} ${datadir}/wayland" + +BBCLASSEXTEND = "native nativesdk" + +RDEPENDS_${PN}-ptest += "binutils sed" -- cgit 1.2.3-korg