summaryrefslogtreecommitdiffstats
path: root/meta-agl-core/recipes-graphics/wayland
diff options
context:
space:
mode:
Diffstat (limited to 'meta-agl-core/recipes-graphics/wayland')
-rw-r--r--meta-agl-core/recipes-graphics/wayland/Readme.weston-ini-conf12
-rw-r--r--meta-agl-core/recipes-graphics/wayland/agl-compositor_git.bb8
-rw-r--r--meta-agl-core/recipes-graphics/wayland/agl-shell-activator_git.bb2
-rw-r--r--meta-agl-core/recipes-graphics/wayland/waltham-transmitter-plugin.bb4
-rw-r--r--meta-agl-core/recipes-graphics/wayland/waltham_%.bbappend4
-rw-r--r--meta-agl-core/recipes-graphics/wayland/waltham_git.bb4
-rw-r--r--meta-agl-core/recipes-graphics/wayland/weston-ini-conf.bb30
-rw-r--r--meta-agl-core/recipes-graphics/wayland/weston-ini-conf.bbappend10
-rw-r--r--meta-agl-core/recipes-graphics/wayland/weston-init_aglcore.inc4
-rw-r--r--meta-agl-core/recipes-graphics/wayland/weston/0001-gl-renderer-Avoid-double-free-on-init-failure.patch33
-rw-r--r--meta-agl-core/recipes-graphics/wayland/weston/0001-libweston-backend-drm-Re-order-gbm-destruction-at-DR.patch49
-rw-r--r--meta-agl-core/recipes-graphics/wayland/weston_8.0_aglcore.inc12
12 files changed, 128 insertions, 44 deletions
diff --git a/meta-agl-core/recipes-graphics/wayland/Readme.weston-ini-conf b/meta-agl-core/recipes-graphics/wayland/Readme.weston-ini-conf
index bb66fd2bb..ee75c7335 100644
--- a/meta-agl-core/recipes-graphics/wayland/Readme.weston-ini-conf
+++ b/meta-agl-core/recipes-graphics/wayland/Readme.weston-ini-conf
@@ -5,7 +5,7 @@ do_configure() function to your bbappend, using machine (e.g. h3ulcb)
overrides (i.e. use the MACHINE name where "machine" is used below):
'''
-do_configure_machine() {
+do_configure:machine() {
echo repaint-window=34 >> ${WORKDIR}/core.cfg
echo transition-duration=300 >> ${WORKDIR}/ivishell.cfg
@@ -14,17 +14,17 @@ do_configure_machine() {
'''
or:
'''
-do_configure_machine() {
+do_configure:machine() {
sed -i -e 's/drm-backend/fbdev-backend/' ${WORKDIR}/core.cfg
}
'''
To add new non-display sections, just list them in SRC_URI and WESTON_FRAGMENTS:
'''
-FILESEXTRAPATHS_prepend_machine := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend:machine := "${THISDIR}/${PN}:"
-SRC_URI_append_machine = " file://foo.cfg"
-WESTON_FRAGMENTS_append_machine = " foo"
+SRC_URI:append:machine = " file://foo.cfg"
+WESTON_FRAGMENTS:append:machine = " foo"
'''
@@ -33,7 +33,7 @@ HDMI-1-A connected screen that needs to be rotated 270 degrees to one
that is rotated 90 degrees, redefine the WESTON_DISPLAYS variable:
'''
-WESTON_DISPLAYS_machine = "hdmi-a-1-90"
+WESTON_DISPLAYS:machine = "hdmi-a-1-90"
'''
Note that the weston-ini-conf recipe automatically generates a landscape
diff --git a/meta-agl-core/recipes-graphics/wayland/agl-compositor_git.bb b/meta-agl-core/recipes-graphics/wayland/agl-compositor_git.bb
index 0030e4a14..79a9915d0 100644
--- a/meta-agl-core/recipes-graphics/wayland/agl-compositor_git.bb
+++ b/meta-agl-core/recipes-graphics/wayland/agl-compositor_git.bb
@@ -12,7 +12,7 @@ DEPENDS = "wayland wayland-protocols wayland-native weston \
${@bb.utils.contains('AGL_FEATURES', 'waltham-remoting', 'waltham waltham-transmitter-plugin', '', d)}"
SRC_URI = "git://gerrit.automotivelinux.org/gerrit/src/agl-compositor.git;protocol=https;branch=${AGL_BRANCH}"
-SRCREV = "bd4c81d5f90d466df8019d19dca4856aa7a5fa80"
+SRCREV = "59b6881bc315388ba0c8f1be382dce1f6aed3304"
PV = "0.0.10+git${SRCPV}"
S = "${WORKDIR}/git"
@@ -23,7 +23,7 @@ PACKAGECONFIG[policy-deny-all] = "-Dpolicy-default=deny-all,,"
inherit meson pkgconfig python3native
-FILES_${PN} = " \
+FILES:${PN} = " \
${bindir}/agl-compositor \
${bindir}/agl-screenshooter \
${datadir}/${PN}/protocols/agl-shell.xml \
@@ -32,8 +32,8 @@ FILES_${PN} = " \
${libdir}/agl-compositor/libexec_compositor.so.0.0.0 \
"
-RDEPENDS_${PN} += " ${@bb.utils.contains('AGL_FEATURES', 'waltham-remoting', 'waltham waltham-transmitter-plugin', '', d)}"
+RDEPENDS:${PN} += " ${@bb.utils.contains('AGL_FEATURES', 'waltham-remoting', 'waltham waltham-transmitter-plugin', '', d)}"
-FILES_${PN}-dev += " \
+FILES:${PN}-dev += " \
${libdir}/agl-compositor/libexec_compositor.so \
"
diff --git a/meta-agl-core/recipes-graphics/wayland/agl-shell-activator_git.bb b/meta-agl-core/recipes-graphics/wayland/agl-shell-activator_git.bb
index fe0b61f85..049068341 100644
--- a/meta-agl-core/recipes-graphics/wayland/agl-shell-activator_git.bb
+++ b/meta-agl-core/recipes-graphics/wayland/agl-shell-activator_git.bb
@@ -18,5 +18,5 @@ S = "${WORKDIR}/git"
inherit meson pkgconfig python3native
-FILES_${PN} = " ${bindir}/agl-shell-activator \
+FILES:${PN} = " ${bindir}/agl-shell-activator \
${bindir}/agl-activator "
diff --git a/meta-agl-core/recipes-graphics/wayland/waltham-transmitter-plugin.bb b/meta-agl-core/recipes-graphics/wayland/waltham-transmitter-plugin.bb
index aed96de21..466985f41 100644
--- a/meta-agl-core/recipes-graphics/wayland/waltham-transmitter-plugin.bb
+++ b/meta-agl-core/recipes-graphics/wayland/waltham-transmitter-plugin.bb
@@ -13,5 +13,5 @@ S = "${WORKDIR}/git"
inherit meson pkgconfig python3native
-FILES_${PN} += "${libdir}/*"
-FILES_${PN} += "${bindir}/*"
+FILES:${PN} += "${libdir}/*"
+FILES:${PN} += "${bindir}/*"
diff --git a/meta-agl-core/recipes-graphics/wayland/waltham_%.bbappend b/meta-agl-core/recipes-graphics/wayland/waltham_%.bbappend
index 8d0436a3b..302eba4d2 100644
--- a/meta-agl-core/recipes-graphics/wayland/waltham_%.bbappend
+++ b/meta-agl-core/recipes-graphics/wayland/waltham_%.bbappend
@@ -1,6 +1,6 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
-SRC_URI_append = "\
+SRC_URI:append = "\
file://0001-waltham-Fix-compile-build-error.patch \
file://0002-commandxml-Add-support-wthp_app_id-interface.patch \
file://0001-Use-python3-instead-of-2.patch \
diff --git a/meta-agl-core/recipes-graphics/wayland/waltham_git.bb b/meta-agl-core/recipes-graphics/wayland/waltham_git.bb
index 01023a1f2..da092a5e7 100644
--- a/meta-agl-core/recipes-graphics/wayland/waltham_git.bb
+++ b/meta-agl-core/recipes-graphics/wayland/waltham_git.bb
@@ -6,11 +6,11 @@ LIC_FILES_CHKSUM = " \
file://LICENSE;md5=e8ad01a5182f2c1b3a2640e9ea268264 \
"
SRCREV = "1de58c3ff746ddaba7584d760c5454243723d3ca"
-SRC_URI = "git://github.com/wmizuno/waltham.git \
+SRC_URI = "git://github.com/wmizuno/waltham.git;branch=master;protocol=https \
"
S = "${WORKDIR}/git"
inherit autotools pkgconfig
DEPENDS += "libdrm virtual/kernel wayland"
-RDEPENDS_${PN} += "libdrm" \ No newline at end of file
+RDEPENDS:${PN} += "libdrm" \ No newline at end of file
diff --git a/meta-agl-core/recipes-graphics/wayland/weston-ini-conf.bb b/meta-agl-core/recipes-graphics/wayland/weston-ini-conf.bb
index b3a5a4712..8842a5a46 100644
--- a/meta-agl-core/recipes-graphics/wayland/weston-ini-conf.bb
+++ b/meta-agl-core/recipes-graphics/wayland/weston-ini-conf.bb
@@ -63,7 +63,7 @@ do_compile() {
sed -i -e '$ d' ${WORKDIR}/weston.ini.landscape-inverted
}
-do_install_append() {
+do_install:append() {
install -d ${D}${weston_ini_dir}
install -m 0644 ${WORKDIR}/weston.ini.default ${D}${weston_ini_dir}/
install -m 0644 ${WORKDIR}/weston.ini.landscape ${D}${weston_ini_dir}/
@@ -81,28 +81,28 @@ PACKAGE_ARCH = "${MACHINE_ARCH}"
ALTERNATIVE_LINK_NAME[weston.ini] = "${weston_ini_dir}/weston.ini"
-RDEPENDS_${PN} = "weston-init"
-RPROVIDES_${PN} = "weston-ini"
-RCONFLICTS_${PN} = "${PN}-landscape"
-ALTERNATIVE_${PN} = "weston.ini"
+RDEPENDS:${PN} = "weston-init"
+RPROVIDES:${PN} = "weston-ini"
+RCONFLICTS:${PN} = "${PN}-landscape"
+ALTERNATIVE:${PN} = "weston.ini"
ALTERNATIVE_TARGET_${PN} = "${weston_ini_dir}/weston.ini.default"
PACKAGE_BEFORE_PN += "${PN}-landscape"
-FILES_${PN}-landscape = "${weston_ini_dir}/weston.ini.landscape"
+FILES:${PN}-landscape = "${weston_ini_dir}/weston.ini.landscape"
-RDEPENDS_${PN}-landscape = "weston-init"
-RPROVIDES_${PN}-landscape = "weston-ini"
-RCONFLICTS_${PN}-landscape = "${PN}"
-ALTERNATIVE_${PN}-landscape = "weston.ini"
+RDEPENDS:${PN}-landscape = "weston-init"
+RPROVIDES:${PN}-landscape = "weston-ini"
+RCONFLICTS:${PN}-landscape = "${PN}"
+ALTERNATIVE:${PN}-landscape = "weston.ini"
ALTERNATIVE_TARGET_${PN}-landscape = "${weston_ini_dir}/weston.ini.landscape"
PACKAGE_BEFORE_PN += "${PN}-landscape-inverted"
-FILES_${PN}-landscape-inverted = "${weston_ini_dir}/weston.ini.landscape-inverted"
+FILES:${PN}-landscape-inverted = "${weston_ini_dir}/weston.ini.landscape-inverted"
-RDEPENDS_${PN}-landscape-inverted = "weston-init"
-RPROVIDES_${PN}-landscape-inverted = "weston-ini"
-RCONFLICTS_${PN}-landscape-inverted = "${PN}"
-ALTERNATIVE_${PN}-landscape-inverted = "weston.ini"
+RDEPENDS:${PN}-landscape-inverted = "weston-init"
+RPROVIDES:${PN}-landscape-inverted = "weston-ini"
+RCONFLICTS:${PN}-landscape-inverted = "${PN}"
+ALTERNATIVE:${PN}-landscape-inverted = "weston.ini"
ALTERNATIVE_TARGET_${PN}-landscape-inverted = "${weston_ini_dir}/weston.ini.landscape-inverted"
diff --git a/meta-agl-core/recipes-graphics/wayland/weston-ini-conf.bbappend b/meta-agl-core/recipes-graphics/wayland/weston-ini-conf.bbappend
index 88590c602..c4cf6c152 100644
--- a/meta-agl-core/recipes-graphics/wayland/weston-ini-conf.bbappend
+++ b/meta-agl-core/recipes-graphics/wayland/weston-ini-conf.bbappend
@@ -1,12 +1,12 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
PACKAGE_ARCH = "${MACHINE_ARCH}"
-WESTON_DISPLAYS_append = "${@bb.utils.contains("DISTRO_FEATURES", "weston-remoting", " remote-output", "", d)}"
-WESTON_DISPLAYS_append = "${@bb.utils.contains("AGL_FEATURES", "waltham-remoting", " transmitter-output", "", d)}"
+WESTON_DISPLAYS:append = "${@bb.utils.contains("DISTRO_FEATURES", "weston-remoting", " remote-output", "", d)}"
+WESTON_DISPLAYS:append = "${@bb.utils.contains("AGL_FEATURES", "waltham-remoting", " transmitter-output", "", d)}"
# For virtual machines and intel-corei7-64 we want to support both the HDMI-A-1
# and Virtual-1 outputs. This allows us to run virtual images on real hardware
# and vice versa.
-WESTON_DISPLAYS_append_qemuall = " virtual-270"
-WESTON_DISPLAYS_append_intel-corei7-64 = " virtual-270"
+WESTON_DISPLAYS:append:qemuall = " virtual-270"
+WESTON_DISPLAYS:append:intel-corei7-64 = " virtual-270"
diff --git a/meta-agl-core/recipes-graphics/wayland/weston-init_aglcore.inc b/meta-agl-core/recipes-graphics/wayland/weston-init_aglcore.inc
index fc6ab5d97..896f1eafb 100644
--- a/meta-agl-core/recipes-graphics/wayland/weston-init_aglcore.inc
+++ b/meta-agl-core/recipes-graphics/wayland/weston-init_aglcore.inc
@@ -1,8 +1,8 @@
SYSTEMD_AUTO_ENABLE = "enable"
-do_install_append() {
+do_install:append() {
# Remove upstream weston.ini to avoid conflict with weston-ini-conf package
rm -f ${D}${sysconfdir}/xdg/weston/weston.ini
}
-RDEPENDS_${PN} += "weston-ini"
+RDEPENDS:${PN} += "weston-ini"
diff --git a/meta-agl-core/recipes-graphics/wayland/weston/0001-gl-renderer-Avoid-double-free-on-init-failure.patch b/meta-agl-core/recipes-graphics/wayland/weston/0001-gl-renderer-Avoid-double-free-on-init-failure.patch
new file mode 100644
index 000000000..582a33161
--- /dev/null
+++ b/meta-agl-core/recipes-graphics/wayland/weston/0001-gl-renderer-Avoid-double-free-on-init-failure.patch
@@ -0,0 +1,33 @@
+From d76947b6668e0fabe0a4551ac6c2c978f93768cd Mon Sep 17 00:00:00 2001
+From: Daniel Stone <daniels@collabora.com>
+Upstream-Status: Backport
+Date: Mon, 3 Feb 2020 20:01:21 +0000
+Subject: [PATCH] gl-renderer: Avoid double-free on init failure
+
+If gl-renderer fails its initialisation, we return to compositor
+teardown, which will try to free the renderer if ec->renderer was set.
+This is unfortunate when we've already torn it down whilst failing
+gl-renderer init, so just clear the renderer member so we don't try to
+tear down twice.
+
+Signed-off-by: Daniel Stone <daniels@collabora.com>
+Reported-by: Emil Velikov <emil.velikov@collabora.com>
+---
+ libweston/renderer-gl/gl-renderer.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/libweston/renderer-gl/gl-renderer.c b/libweston/renderer-gl/gl-renderer.c
+index a40db3607..79285c008 100644
+--- a/libweston/renderer-gl/gl-renderer.c
++++ b/libweston/renderer-gl/gl-renderer.c
+@@ -3596,6 +3596,7 @@ fail_terminate:
+ eglTerminate(gr->egl_display);
+ fail:
+ free(gr);
++ ec->renderer = NULL;
+ return -1;
+ }
+
+--
+2.33.0
+
diff --git a/meta-agl-core/recipes-graphics/wayland/weston/0001-libweston-backend-drm-Re-order-gbm-destruction-at-DR.patch b/meta-agl-core/recipes-graphics/wayland/weston/0001-libweston-backend-drm-Re-order-gbm-destruction-at-DR.patch
new file mode 100644
index 000000000..4771f689d
--- /dev/null
+++ b/meta-agl-core/recipes-graphics/wayland/weston/0001-libweston-backend-drm-Re-order-gbm-destruction-at-DR.patch
@@ -0,0 +1,49 @@
+From bd108ca84767a339c274ad0b56d74b46b3888c38 Mon Sep 17 00:00:00 2001
+From: Marius Vlad <marius.vlad@collabora.com>
+Date: Thu, 1 Apr 2021 00:12:00 +0300
+Subject: [PATCH] libweston/backend-drm: Re-order gbm destruction at
+ DRM-backend tear down
+
+Tearing down the drm-backend when there are no input devices, would call
+for the gbm device destruction before compositor shutdown. The latter
+would call into the renderer detroy function and assume that the
+EGLDisplay, which was created using the before-mentioned gbm device, is
+still available. This patch re-orders the gbm destruction after the
+compositor shutdown when no one would make use of it.
+
+Fixes: #314
+
+Upstream-Status: Backport
+Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
+Suggested-by: Daniel Stone <daniel.stone@collabora.com>
+
+---
+ libweston/backend-drm/drm.c | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/libweston/backend-drm/drm.c b/libweston/backend-drm/drm.c
+index be2570b..3cb41bf 100644
+--- a/libweston/backend-drm/drm.c
++++ b/libweston/backend-drm/drm.c
+@@ -2992,10 +2992,6 @@ err_drm_source:
+ err_udev_input:
+ udev_input_destroy(&b->input);
+ err_sprite:
+-#ifdef BUILD_DRM_GBM
+- if (b->gbm)
+- gbm_device_destroy(b->gbm);
+-#endif
+ destroy_sprites(b);
+ err_udev_dev:
+ udev_device_unref(drm_device);
+@@ -3005,6 +3001,10 @@ err_launcher:
+ weston_launcher_destroy(compositor->launcher);
+ err_compositor:
+ weston_compositor_shutdown(compositor);
++#ifdef BUILD_DRM_GBM
++ if (b->gbm)
++ gbm_device_destroy(b->gbm);
++#endif
+ free(b);
+ return NULL;
+ }
diff --git a/meta-agl-core/recipes-graphics/wayland/weston_8.0_aglcore.inc b/meta-agl-core/recipes-graphics/wayland/weston_8.0_aglcore.inc
index d29d09f7f..c81b35545 100644
--- a/meta-agl-core/recipes-graphics/wayland/weston_8.0_aglcore.inc
+++ b/meta-agl-core/recipes-graphics/wayland/weston_8.0_aglcore.inc
@@ -1,14 +1,16 @@
-FILESEXTRAPATHS_append := ":${THISDIR}/weston"
+FILESEXTRAPATHS:append := ":${THISDIR}/weston"
-SRC_URI_append = "\
+SRC_URI:append = "\
file://0005-correctly-tear-down-drm-backend.patch \
+ file://0001-libweston-backend-drm-Re-order-gbm-destruction-at-DR.patch \
+ file://0001-gl-renderer-Avoid-double-free-on-init-failure.patch \
"
# Workaround for incorrect upstream definition
PACKAGECONFIG[remoting] = "-Dremoting=true,-Dremoting=false,gstreamer1.0 gstreamer1.0-plugins-base"
PACKAGECONFIG[headless] = "-Dbackend-headless=true"
-PACKAGECONFIG_append = "${@bb.utils.contains('DISTRO_FEATURES', 'weston-remoting', ' remoting', '', d)}"
-PACKAGECONFIG_append = "${@bb.utils.contains('AGL_FEATURES', 'waltham-remoting', ' remoting', '', d)}"
+PACKAGECONFIG:append = "${@bb.utils.contains('DISTRO_FEATURES', 'weston-remoting', ' remoting', '', d)}"
+PACKAGECONFIG:append = "${@bb.utils.contains('AGL_FEATURES', 'waltham-remoting', ' remoting', '', d)}"
# seat management is only for waltham-transmitter-plugin
-SRC_URI_append = "${@bb.utils.contains('AGL_FEATURES', 'waltham-remoting', 'file://0001-libweston-Migrate-weston_seat_init-release-to-public.patch', '', d)}"
+SRC_URI:append = "${@bb.utils.contains('AGL_FEATURES', 'waltham-remoting', 'file://0001-libweston-Migrate-weston_seat_init-release-to-public.patch', '', d)}"