From 05e7875a97f52db081849315e43a8471f2d7a5a3 Mon Sep 17 00:00:00 2001
From: Naoto Yamaguchi <naoto.yamaguchi@aisin.co.jp>
Date: Mon, 4 Oct 2021 01:10:54 +0900
Subject: [PATCH] Create simple layout manager recipe

The ivi guest for demo use wayland-ivi-extension.  That need to window manager.
This patch add tiny window manager for demo.

Bug-AGL: SPEC-4097

Signed-off-by: Naoto Yamaguchi <naoto.yamaguchi@aisin.co.jp>
Change-Id: I8392db39a7e2de5d8c61d511421afea9586d7922
---
 .../ilm-manager/ilm-manager/agl.json          | 60 +++++++++++++++++++
 .../ilm-manager/ilm-manager.service           | 12 ++++
 .../ilm-manager/ilm-manager_git.bb            | 31 ++++++++++
 3 files changed, 103 insertions(+)
 create mode 100644 meta-agl-lxc/recipes-demo/ilm-manager/ilm-manager/agl.json
 create mode 100644 meta-agl-lxc/recipes-demo/ilm-manager/ilm-manager/ilm-manager.service
 create mode 100644 meta-agl-lxc/recipes-demo/ilm-manager/ilm-manager_git.bb

diff --git a/meta-agl-lxc/recipes-demo/ilm-manager/ilm-manager/agl.json b/meta-agl-lxc/recipes-demo/ilm-manager/ilm-manager/agl.json
new file mode 100644
index 00000000..2abdf7b8
--- /dev/null
+++ b/meta-agl-lxc/recipes-demo/ilm-manager/ilm-manager/agl.json
@@ -0,0 +1,60 @@
+{
+	"screen": [
+		{
+			"name": "cluster-screen",
+			"dispname": "HDMI-A-2"
+		},
+		{
+			"name": "ivi-screen",
+			"dispname": "HDMI-A-1"
+		}
+	],
+	"layer": [
+		{
+			"name": "cluster-layer",
+			"id": 1000,
+			"width": 1920,
+			"height": 720,
+			"x": 0,
+			"y": 0,
+			"z": 10,
+			"attach": "cluster-screen"
+		},
+		{
+			"name": "ivi-layer",
+			"id": 2000,
+			"width": 1920,
+			"height": 1080,
+			"x": 0,
+			"y": 0,
+			"z": 10,
+			"attach": "ivi-screen"
+		}
+	],
+	"surface": [
+		{
+			"name": "cluster-app",
+			"id": 10,
+			"x": 0,
+			"y": 0,
+			"z": 100,
+			"attach": "cluster-layer"
+		},
+		{
+			"name": "ivi-app",
+			"id": 2010,
+			"x": 0,
+			"y": 0,
+			"z": 100,
+			"attach": "ivi-layer"
+		},
+		{
+			"name": "xdg-test",
+			"id": 9801,
+			"x": 0,
+			"y": 0,
+			"z": 110,
+			"attach": "ivi-layer"
+		}
+	]
+}
diff --git a/meta-agl-lxc/recipes-demo/ilm-manager/ilm-manager/ilm-manager.service b/meta-agl-lxc/recipes-demo/ilm-manager/ilm-manager/ilm-manager.service
new file mode 100644
index 00000000..b91b65f1
--- /dev/null
+++ b/meta-agl-lxc/recipes-demo/ilm-manager/ilm-manager/ilm-manager.service
@@ -0,0 +1,12 @@
+[Unit]
+Description=Tiny Window Manager
+After=weston.service
+Wants=weston.service
+
+[Service]
+Type=simple
+EnvironmentFile=/etc/default/weston
+ExecStart=/usr/bin/ilmmanager
+
+[Install]
+WantedBy=weston.service
diff --git a/meta-agl-lxc/recipes-demo/ilm-manager/ilm-manager_git.bb b/meta-agl-lxc/recipes-demo/ilm-manager/ilm-manager_git.bb
new file mode 100644
index 00000000..12f14c84
--- /dev/null
+++ b/meta-agl-lxc/recipes-demo/ilm-manager/ilm-manager_git.bb
@@ -0,0 +1,31 @@
+SUMMARY = "Tiny window manager for wayland-ivi-extension"
+DESCRIPTION = "Tiny window manager for wayland-ivi-extension"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=89aea4e17d99a7cacdbeed46a0096b10"
+
+DEPENDS = "jsoncpp wayland-ivi-extension"
+
+PV = "0.1.0+rev${SRCPV}"
+
+SRCREV = "e3a33d47195e4656f7117753d27a0f2d6b21aab9"
+SRC_URI = " \
+    git://github.com/AGLExport/ilm-manager.git;protocol=https \
+    file://agl.json \
+    file://ilm-manager.service \
+    "
+S = "${WORKDIR}/git"
+
+inherit autotools pkgconfig systemd
+
+do_install_append() {
+    #install scripts
+    install -d ${D}/etc
+    install -m 0644 ${WORKDIR}/agl.json ${D}/etc
+
+    install -d ${D}/lib/systemd/system
+    install -m 0644 ${WORKDIR}/ilm-manager.service ${D}/lib/systemd/system
+}
+
+FILES_${PN} += " ${systemd_unitdir} /etc/* "
+SYSTEMD_PACKAGES = "${PN}"
+SYSTEMD_SERVICE_${PN} = "ilm-manager.service"
-- 
GitLab