summaryrefslogtreecommitdiffstats
path: root/recipes-graphics/wayland
diff options
context:
space:
mode:
Diffstat (limited to 'recipes-graphics/wayland')
-rw-r--r--recipes-graphics/wayland/wayland-protocols_1.22.imx.bb (renamed from recipes-graphics/wayland/wayland-protocols_1.20.imx.bb)4
-rw-r--r--recipes-graphics/wayland/weston-init/imx/weston.ini3
-rw-r--r--recipes-graphics/wayland/weston/0001-libweston-backend-drm-Re-order-gbm-destruction-at-DR.patch52
-rw-r--r--recipes-graphics/wayland/weston/0001-meson.build-fix-incorrect-header.patch32
-rw-r--r--recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch2
-rw-r--r--recipes-graphics/wayland/weston/systemd-notify.weston-start9
-rw-r--r--recipes-graphics/wayland/weston/xwayland.weston-start2
-rw-r--r--recipes-graphics/wayland/weston_9.0.0.imx.bb25
8 files changed, 114 insertions, 15 deletions
diff --git a/recipes-graphics/wayland/wayland-protocols_1.20.imx.bb b/recipes-graphics/wayland/wayland-protocols_1.22.imx.bb
index 0d1f4726..8cc2f137 100644
--- a/recipes-graphics/wayland/wayland-protocols_1.20.imx.bb
+++ b/recipes-graphics/wayland/wayland-protocols_1.22.imx.bb
@@ -9,8 +9,8 @@ LICENSE = "MIT"
9LIC_FILES_CHKSUM = "file://COPYING;md5=c7b12b6702da38ca028ace54aae3d484 \ 9LIC_FILES_CHKSUM = "file://COPYING;md5=c7b12b6702da38ca028ace54aae3d484 \
10 file://stable/presentation-time/presentation-time.xml;endline=26;md5=4646cd7d9edc9fa55db941f2d3a7dc53" 10 file://stable/presentation-time/presentation-time.xml;endline=26;md5=4646cd7d9edc9fa55db941f2d3a7dc53"
11 11
12SRC_URI = "git://source.codeaurora.org/external/imx/wayland-protocols-imx.git;protocol=https;branch=wayland-protocols-imx-1.20" 12SRC_URI = "git://source.codeaurora.org/external/imx/wayland-protocols-imx.git;protocol=https;branch=wayland-protocols-imx-1.22"
13SRCREV = "9cacf108d0ee5863c7a656da5d2271bc2396e43d" 13SRCREV = "0f71ffe59cf4c3f050ff79ea18f96345fcf0061e"
14S = "${WORKDIR}/git" 14S = "${WORKDIR}/git"
15 15
16inherit autotools pkgconfig 16inherit autotools pkgconfig
diff --git a/recipes-graphics/wayland/weston-init/imx/weston.ini b/recipes-graphics/wayland/weston-init/imx/weston.ini
index 916e621a..3e8be42f 100644
--- a/recipes-graphics/wayland/weston-init/imx/weston.ini
+++ b/recipes-graphics/wayland/weston-init/imx/weston.ini
@@ -5,6 +5,7 @@ idle-time=0
5#xwayland=true 5#xwayland=true
6#repaint-window=16 6#repaint-window=16
7#enable-overlay-view=1 7#enable-overlay-view=1
8modules=screen-share.so
8 9
9#[shell] 10#[shell]
10#size=1920x1080 11#size=1920x1080
@@ -27,4 +28,4 @@ touchscreen_calibrator=true
27#transform=rotate-90 28#transform=rotate-90
28 29
29[screen-share] 30[screen-share]
30command=@bindir@/weston --backend=rdp-backend.so --shell=fullscreen-shell.so --no-clients-resize 31command=@bindir@/weston --backend=rdp-backend.so --shell=fullscreen-shell.so --no-clients-resize --rdp-tls-cert=/etc/freerdp/keys/server.crt --rdp-tls-key=/etc/freerdp/keys/server.key
diff --git a/recipes-graphics/wayland/weston/0001-libweston-backend-drm-Re-order-gbm-destruction-at-DR.patch b/recipes-graphics/wayland/weston/0001-libweston-backend-drm-Re-order-gbm-destruction-at-DR.patch
new file mode 100644
index 00000000..db640055
--- /dev/null
+++ b/recipes-graphics/wayland/weston/0001-libweston-backend-drm-Re-order-gbm-destruction-at-DR.patch
@@ -0,0 +1,52 @@
1From 4be82f75a47bd456452ab713d7d57a75d844f42a Mon Sep 17 00:00:00 2001
2From: Marius Vlad <marius.vlad@collabora.com>
3Date: Thu, 1 Apr 2021 00:12:00 +0300
4Subject: [PATCH] libweston/backend-drm: Re-order gbm destruction at
5 DRM-backend tear down
6
7Tearing down the drm-backend when there are no input devices, would call
8for the gbm device destruction before compositor shutdown. The latter
9would call into the renderer detroy function and assume that the
10EGLDisplay, which was created using the before-mentioned gbm device, is
11still available. This patch re-orders the gbm destruction after the
12compositor shutdown when no one would make use of it.
13
14Fixes: #314
15
16Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
17Suggested-by: Daniel Stone <daniel.stone@collabora.com>
18
19Upstream-Status: Backport [https://gitlab.freedesktop.org/wayland/weston/-/commit/d171c7b3ba346c4d0bd6494f45ebf0be3c3cc5fb]
20---
21 libweston/backend-drm/drm.c | 8 ++++----
22 1 file changed, 4 insertions(+), 4 deletions(-)
23
24diff --git a/libweston/backend-drm/drm.c b/libweston/backend-drm/drm.c
25index 9d3b5dcc..67834d3e 100644
26--- a/libweston/backend-drm/drm.c
27+++ b/libweston/backend-drm/drm.c
28@@ -3402,10 +3402,6 @@ err_drm_source:
29 wl_event_source_remove(b->drm_source);
30 err_udev_input:
31 udev_input_destroy(&b->input);
32-#ifdef BUILD_DRM_GBM
33- if (b->gbm)
34- gbm_device_destroy(b->gbm);
35-#endif
36 destroy_sprites(b);
37 err_udev_dev:
38 udev_device_unref(drm_device);
39@@ -3415,6 +3411,10 @@ err_launcher:
40 weston_launcher_destroy(compositor->launcher);
41 err_compositor:
42 weston_compositor_shutdown(compositor);
43+#ifdef BUILD_DRM_GBM
44+ if (b->gbm)
45+ gbm_device_destroy(b->gbm);
46+#endif
47 free(b);
48 return NULL;
49 }
50--
512.17.1
52
diff --git a/recipes-graphics/wayland/weston/0001-meson.build-fix-incorrect-header.patch b/recipes-graphics/wayland/weston/0001-meson.build-fix-incorrect-header.patch
new file mode 100644
index 00000000..06e0f7ba
--- /dev/null
+++ b/recipes-graphics/wayland/weston/0001-meson.build-fix-incorrect-header.patch
@@ -0,0 +1,32 @@
1From a2ba4714a6872e547621d29d9ddcb0f374b88cf6 Mon Sep 17 00:00:00 2001
2From: Chen Qi <Qi.Chen@windriver.com>
3Date: Tue, 20 Apr 2021 20:42:18 -0700
4Subject: [PATCH] meson.build: fix incorrect header
5
6The wayland.c actually include 'xdg-shell-client-protocol.h' instead of
7the server one, so fix it. Otherwise, it's possible to get build failure
8due to race condition.
9
10Upstream-Status: Pending
11
12Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
13---
14 libweston/backend-wayland/meson.build | 2 +-
15 1 file changed, 1 insertion(+), 1 deletion(-)
16
17diff --git a/libweston/backend-wayland/meson.build b/libweston/backend-wayland/meson.build
18index 7e82513..29270b5 100644
19--- a/libweston/backend-wayland/meson.build
20+++ b/libweston/backend-wayland/meson.build
21@@ -10,7 +10,7 @@ srcs_wlwl = [
22 fullscreen_shell_unstable_v1_protocol_c,
23 presentation_time_protocol_c,
24 presentation_time_server_protocol_h,
25- xdg_shell_server_protocol_h,
26+ xdg_shell_client_protocol_h,
27 xdg_shell_protocol_c,
28 ]
29
30--
312.30.2
32
diff --git a/recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch b/recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch
index 3279a728..f6ebfd8f 100644
--- a/recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch
+++ b/recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch
@@ -11,7 +11,7 @@ Since starting weston as root is a valid use case by itself, if
11PAM is not available, provide a default version of weston-launch 11PAM is not available, provide a default version of weston-launch
12without non-root-user support. 12without non-root-user support.
13 13
14Upstream-Status: Pending 14Upstream-Status: Denied [https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/725]
15 15
16Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com> 16Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
17Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> 17Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
diff --git a/recipes-graphics/wayland/weston/systemd-notify.weston-start b/recipes-graphics/wayland/weston/systemd-notify.weston-start
new file mode 100644
index 00000000..a97e7b38
--- /dev/null
+++ b/recipes-graphics/wayland/weston/systemd-notify.weston-start
@@ -0,0 +1,9 @@
1#!/bin/sh
2
3# SPDX-FileCopyrightText: Huawei Inc.
4# SPDX-License-Identifier: Apache-2.0
5
6
7if [[ -x "/usr/lib/weston/systemd-notify.so" ]]; then
8 add_weston_module "systemd-notify.so"
9fi
diff --git a/recipes-graphics/wayland/weston/xwayland.weston-start b/recipes-graphics/wayland/weston/xwayland.weston-start
index b483c97c..db384b1a 100644
--- a/recipes-graphics/wayland/weston/xwayland.weston-start
+++ b/recipes-graphics/wayland/weston/xwayland.weston-start
@@ -2,6 +2,4 @@
2 2
3if type Xwayland >/dev/null 2>/dev/null; then 3if type Xwayland >/dev/null 2>/dev/null; then
4 mkdir -p /tmp/.X11-unix 4 mkdir -p /tmp/.X11-unix
5
6 add_weston_argument "--modules=xwayland.so"
7fi 5fi
diff --git a/recipes-graphics/wayland/weston_9.0.0.imx.bb b/recipes-graphics/wayland/weston_9.0.0.imx.bb
index 76296c8e..0ab2c6b2 100644
--- a/recipes-graphics/wayland/weston_9.0.0.imx.bb
+++ b/recipes-graphics/wayland/weston_9.0.0.imx.bb
@@ -3,7 +3,7 @@
3# recipe. The second section customizes the recipe for i.MX. 3# recipe. The second section customizes the recipe for i.MX.
4 4
5########### OE-core copy ################## 5########### OE-core copy ##################
6# Upstream hash: 0a882490fe75915c7a119f3498df6750be25f8e0 6# Upstream hash: c8aa0222ce2be647911114aaebcbb0d55d7caf87
7 7
8SUMMARY = "Weston, a Wayland compositor" 8SUMMARY = "Weston, a Wayland compositor"
9DESCRIPTION = "Weston is the reference implementation of a Wayland compositor" 9DESCRIPTION = "Weston is the reference implementation of a Wayland compositor"
@@ -16,8 +16,11 @@ SRC_URI = "https://wayland.freedesktop.org/releases/${BPN}-${PV}.tar.xz \
16 file://weston.png \ 16 file://weston.png \
17 file://weston.desktop \ 17 file://weston.desktop \
18 file://xwayland.weston-start \ 18 file://xwayland.weston-start \
19 file://systemd-notify.weston-start \
19 file://0001-weston-launch-Provide-a-default-version-that-doesn-t.patch \ 20 file://0001-weston-launch-Provide-a-default-version-that-doesn-t.patch \
20 file://0001-tests-include-fcntl.h-for-open-O_RDWR-O_CLOEXEC-and-.patch \ 21 file://0001-tests-include-fcntl.h-for-open-O_RDWR-O_CLOEXEC-and-.patch \
22 file://0001-meson.build-fix-incorrect-header.patch \
23 file://0001-libweston-backend-drm-Re-order-gbm-destruction-at-DR.patch \
21" 24"
22 25
23SRC_URI:append:libc-musl = " file://dont-use-plane-add-prop.patch " 26SRC_URI:append:libc-musl = " file://dont-use-plane-add-prop.patch "
@@ -38,7 +41,7 @@ LDFLAGS += "${@bb.utils.contains('DISTRO_FEATURES', 'lto', '-Wl,-z,undefs', '',
38 41
39WESTON_MAJOR_VERSION = "${@'.'.join(d.getVar('PV').split('.')[0:1])}" 42WESTON_MAJOR_VERSION = "${@'.'.join(d.getVar('PV').split('.')[0:1])}"
40 43
41EXTRA_OEMESON += "-Dbackend-default=auto -Dbackend-rdp=false -Dpipewire=false" 44EXTRA_OEMESON += "-Dbackend-default=auto -Dpipewire=false"
42 45
43PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'kms fbdev wayland egl clients', '', d)} \ 46PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'kms fbdev wayland egl clients', '', d)} \
44 ${@bb.utils.contains('DISTRO_FEATURES', 'x11 wayland', 'xwayland', '', d)} \ 47 ${@bb.utils.contains('DISTRO_FEATURES', 'x11 wayland', 'xwayland', '', d)} \
@@ -64,6 +67,8 @@ PACKAGECONFIG[x11] = "-Dbackend-x11=true,-Dbackend-x11=false,virtual/libx11 libx
64PACKAGECONFIG[headless] = "-Dbackend-headless=true,-Dbackend-headless=false" 67PACKAGECONFIG[headless] = "-Dbackend-headless=true,-Dbackend-headless=false"
65# Weston on framebuffer 68# Weston on framebuffer
66PACKAGECONFIG[fbdev] = "-Dbackend-fbdev=true,-Dbackend-fbdev=false,udev mtdev" 69PACKAGECONFIG[fbdev] = "-Dbackend-fbdev=true,-Dbackend-fbdev=false,udev mtdev"
70# Weston on RDP
71PACKAGECONFIG[rdp] = "-Dbackend-rdp=true,-Dbackend-rdp=false,freerdp"
67# weston-launch 72# weston-launch
68PACKAGECONFIG[launch] = "-Dweston-launch=true,-Dweston-launch=false,drm" 73PACKAGECONFIG[launch] = "-Dweston-launch=true,-Dweston-launch=false,drm"
69# VA-API desktop recorder 74# VA-API desktop recorder
@@ -83,7 +88,7 @@ PACKAGECONFIG[colord] = "-Dcolor-management-colord=true,-Dcolor-management-color
83# Clients support 88# Clients support
84PACKAGECONFIG[clients] = "-Dsimple-clients=all -Ddemo-clients=true,-Dsimple-clients= -Ddemo-clients=false" 89PACKAGECONFIG[clients] = "-Dsimple-clients=all -Ddemo-clients=true,-Dsimple-clients= -Ddemo-clients=false"
85# Virtual remote output with GStreamer on DRM backend 90# Virtual remote output with GStreamer on DRM backend
86PACKAGECONFIG[remoting] = "-Dremoting=true,-Dremoting=false,gstreamer1.0" 91PACKAGECONFIG[remoting] = "-Dremoting=true,-Dremoting=false,gstreamer1.0 gstreamer1.0-plugins-base"
87# Weston with PAM support 92# Weston with PAM support
88PACKAGECONFIG[pam] = "-Dpam=true,-Dpam=false,libpam" 93PACKAGECONFIG[pam] = "-Dpam=true,-Dpam=false,libpam"
89# Weston with screen-share support 94# Weston with screen-share support
@@ -114,6 +119,10 @@ do_install:append() {
114 install -Dm 644 ${WORKDIR}/xwayland.weston-start ${D}${datadir}/weston-start/xwayland 119 install -Dm 644 ${WORKDIR}/xwayland.weston-start ${D}${datadir}/weston-start/xwayland
115 fi 120 fi
116 121
122 if [ "${@bb.utils.contains('PACKAGECONFIG', 'systemd', 'yes', 'no', d)}" = "yes" ]; then
123 install -Dm 644 ${WORKDIR}/systemd-notify.weston-start ${D}${datadir}/weston-start/systemd-notify
124 fi
125
117 if [ "${@bb.utils.contains('PACKAGECONFIG', 'launch', 'yes', 'no', d)}" = "yes" ]; then 126 if [ "${@bb.utils.contains('PACKAGECONFIG', 'launch', 'yes', 'no', d)}" = "yes" ]; then
118 chmod u+s ${D}${bindir}/weston-launch 127 chmod u+s ${D}${bindir}/weston-launch
119 fi 128 fi
@@ -149,13 +158,11 @@ SUMMARY = "Weston, a Wayland compositor, i.MX fork"
149DEFAULT_PREFERENCE = "-1" 158DEFAULT_PREFERENCE = "-1"
150 159
151SRCBRANCH = "weston-imx-9.0" 160SRCBRANCH = "weston-imx-9.0"
152SRC_URI = "git://source.codeaurora.org/external/imx/weston-imx.git;protocol=https;branch=${SRCBRANCH} \ 161SRC_URI:remove = "https://wayland.freedesktop.org/releases/${BPN}-${PV}.tar.xz \
153 file://weston.png \ 162 file://0001-tests-include-fcntl.h-for-open-O_RDWR-O_CLOEXEC-and-.patch \
154 file://weston.desktop \
155 file://xwayland.weston-start \
156 file://0001-weston-launch-Provide-a-default-version-that-doesn-t.patch \
157" 163"
158SRCREV = "230e9bc3d647e511e0601e3d45034f22495ed3c7" 164SRC_URI:prepend = "git://source.codeaurora.org/external/imx/weston-imx.git;protocol=https;branch=${SRCBRANCH} "
165SRCREV = "26da63a46b926c8301d8c271f6869c893cc35afa"
159S = "${WORKDIR}/git" 166S = "${WORKDIR}/git"
160 167
161# Disable OpenGL for parts with GPU support for 2D but not 3D 168# Disable OpenGL for parts with GPU support for 2D but not 3D