agl-service-windowmanager: add weston-ready systemd dependency 11/20011/2
authorScott Murray <scott.murray@konsulko.com>
Fri, 18 Jan 2019 00:14:37 +0000 (19:14 -0500)
committerJan-Simon Moeller <jsmoeller@linuxfoundation.org>
Wed, 13 Feb 2019 12:55:47 +0000 (12:55 +0000)
Add installation of systemd over-ride configuration that adds a
dependency on weston-ready to ensure that the windowmanager and
its dependencies start after weston is actually initialized.
In testing, this seems to resolve the issue of homescreen and
launcher failing to start in situations such as when using MOST
audio and/or the gst-record feature in Weston.

Bug-AGL: SPEC-2115

Change-Id: Id15045357f30d3f447037026d0ab960ae2569d69
Signed-off-by: Scott Murray <scott.murray@konsulko.com>
(cherry picked from commit 7650fff17bd502e80feb28dc9bf5927bc5ecf52c)
Signed-off-by: Jan-Simon Möller <jsmoeller@linuxfoundation.org>
meta-hmi-framework/recipes-graphics/agl-service-windowmanager/agl-service-windowmanager_git.bb
meta-hmi-framework/recipes-graphics/agl-service-windowmanager/files/weston-ready.conf [new file with mode: 0644]

index a7dd894..d80106c 100644 (file)
@@ -13,10 +13,24 @@ DEPENDS = "af-binder json-c wayland wayland-ivi-extension wayland-native"
 
 inherit cmake aglwgt
 
-SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-windowmanager;protocol=https;branch=${AGL_BRANCH}"
+SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-windowmanager;protocol=https;branch=${AGL_BRANCH} \
+           file://weston-ready.conf \
+"
 SRCREV = "fb861c2f05e5f49f4009d0d7c91101259f904f1d"
 PV = "1.0+git${SRCPV}"
 S = "${WORKDIR}/git"
 
 #If you would like to output log, uncomment out
 EXTRA_OECMAKE_append_agl-devel = " -DENABLE_DEBUG_OUTPUT=ON "
+
+do_install_append() {
+    # Install systemd over-ride that adds a dependency on weston-ready
+    # to ensure that the windowmanager and its dependencies start after
+    # weston is actually initialized.
+    install -d ${D}${sysconfdir}/systemd/system/afm-api-windowmanager@.service.d
+    install -m 0644 ${WORKDIR}/weston-ready.conf ${D}${sysconfdir}/systemd/system/afm-api-windowmanager@.service.d
+}
+
+FILES_${PN} += "${systemd_system_unitdir}"
+
+REDEPENDS_${PN} += "weston-ready"
diff --git a/meta-hmi-framework/recipes-graphics/agl-service-windowmanager/files/weston-ready.conf b/meta-hmi-framework/recipes-graphics/agl-service-windowmanager/files/weston-ready.conf
new file mode 100644 (file)
index 0000000..e90eed5
--- /dev/null
@@ -0,0 +1,4 @@
+[Unit]
+Requires=weston-ready.service
+After=weston-ready.service
+