weston-ini-conf: rework to add KVM host version 96/28196/1
authorScott Murray <scott.murray@konsulko.com>
Wed, 23 Nov 2022 20:30:14 +0000 (15:30 -0500)
committerScott Murray <scott.murray@konsulko.com>
Wed, 23 Nov 2022 20:30:14 +0000 (15:30 -0500)
Add a canned weston.ini template and install it with the
appropriate guest VM app ids as weston-ini-conf-kvm.
The guest VM images/ids can be overriden with the variables
GUEST_VM1_IMAGE and GUEST_VM2_IMAGE (from e.g. site.conf).

Bug-AGL: SPEC-4618

Change-Id: I053a956fd5af78b13095f15b6e6c40e81a0ff0c9
Signed-off-by: Scott Murray <scott.murray@konsulko.com>
recipes-graphics/wayland/weston-ini-conf.bbappend
recipes-graphics/wayland/weston-ini-conf/weston.ini.kvm.in [new file with mode: 0644]
recipes-graphics/wayland/weston-ini-conf_agldemo.inc [new file with mode: 0644]
recipes-graphics/wayland/weston-ini-conf_aglflutter.inc [deleted file]

index b509b38..423a469 100644 (file)
@@ -1 +1 @@
-require ${@bb.utils.contains('AGL_FEATURES', 'agl-flutter', 'weston-ini-conf_aglflutter.inc', '', d)}
+require ${@bb.utils.contains('AGL_FEATURES', 'agldemo', 'weston-ini-conf_agldemo.inc', '', d)}
diff --git a/recipes-graphics/wayland/weston-ini-conf/weston.ini.kvm.in b/recipes-graphics/wayland/weston-ini-conf/weston.ini.kvm.in
new file mode 100644 (file)
index 0000000..79ca30c
--- /dev/null
@@ -0,0 +1,18 @@
+[core]
+backend=drm-backend.so
+require-input=false
+modules=systemd-notify.so
+
+[shell]
+locking=true
+panel-position=none
+
+# A display is connected to HDMI-A-1
+[output]
+name=HDMI-A-1
+agl-shell-app-id=@GUEST_VM1_IMAGE@
+
+# A display is connected to HDMI-A-2
+[output]
+name=HDMI-A-2
+agl-shell-app-id=@GUEST_VM2_IMAGE@
diff --git a/recipes-graphics/wayland/weston-ini-conf_agldemo.inc b/recipes-graphics/wayland/weston-ini-conf_agldemo.inc
new file mode 100644 (file)
index 0000000..21d8014
--- /dev/null
@@ -0,0 +1,48 @@
+FILESEXTRAPATHS:prepend := "${THISDIR}/weston-ini-conf:"
+
+SRC_URI += "file://weston.ini.kvm.in"
+
+GUEST_VM1_IMAGE ?= "agl-demo-platform"
+GUEST_VM2_IMAGE ?= "agl-cluster-demo-platform"
+
+do_compile:append() {
+    # Put all of our cfg files together for a default portrait
+    # orientation configuration
+    rm -f ${WORKDIR}/weston.ini.flutter
+    for F in ${WESTON_FRAGMENTS}; do
+        cat ${WORKDIR}/${F}.cfg >> ${WORKDIR}/weston.ini.flutter
+       if grep -q '\[output\]' ${WORKDIR}/${F}.cfg; then
+            echo "activation-area=1080x1600+0,160" >> ${WORKDIR}/weston.ini.flutter
+        fi
+        echo >> ${WORKDIR}/weston.ini.flutter
+    done
+    sed -i -e '$ d' ${WORKDIR}/weston.ini.flutter
+
+    # Start with a canned configuration for a KVM host, filling in
+    # the guest VM application ids to pin them to specific outputs.
+    rm -f ${WORKDIR}/weston.ini.kvm
+    sed -e "s/@GUEST_VM1_IMAGE@/${GUEST_VM1_IMAGE}/g" \
+        -e "s/@GUEST_VM2_IMAGE@/${GUEST_VM2_IMAGE}/g" \
+        ${WORKDIR}/weston.ini.kvm.in > ${WORKDIR}/weston.ini.kvm
+}
+
+do_install:append() {
+    install -m 0644 ${WORKDIR}/weston.ini.flutter ${D}${weston_ini_dir}/
+    install -m 0644 ${WORKDIR}/weston.ini.kvm ${D}${weston_ini_dir}/
+}
+
+PACKAGE_BEFORE_PN += "${PN}-flutter ${PN}-kvm"
+
+FILES:${PN}-flutter = "${weston_ini_dir}/weston.ini.flutter"
+
+RPROVIDES:${PN}-flutter = "weston-ini"
+RCONFLICTS:${PN}-flutter = "${PN}"
+ALTERNATIVE:${PN}-flutter = "weston.ini"
+ALTERNATIVE_TARGET_${PN}-flutter = "${weston_ini_dir}/weston.ini.flutter"
+
+FILES:${PN}-kvm = "${weston_ini_dir}/weston.ini.kvm"
+
+RPROVIDES:${PN}-kvm = "weston-ini"
+RCONFLICTS:${PN}-kvm = "${PN}"
+ALTERNATIVE:${PN}-kvm = "weston.ini"
+ALTERNATIVE_TARGET_${PN}-kvm = "${weston_ini_dir}/weston.ini.kvm"
diff --git a/recipes-graphics/wayland/weston-ini-conf_aglflutter.inc b/recipes-graphics/wayland/weston-ini-conf_aglflutter.inc
deleted file mode 100644 (file)
index 84e88e1..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-do_compile:append() {
-    # Put all of our cfg files together for a default portrait
-    # orientation configuration
-    rm -f ${WORKDIR}/weston.ini.flutter
-    for F in ${WESTON_FRAGMENTS}; do
-        cat ${WORKDIR}/${F}.cfg >> ${WORKDIR}/weston.ini.flutter
-       if grep -q '\[output\]' ${WORKDIR}/${F}.cfg; then
-            echo "activation-area=1080x1600+0,160" >> ${WORKDIR}/weston.ini.flutter
-        fi
-        echo >> ${WORKDIR}/weston.ini.flutter
-    done
-    sed -i -e '$ d' ${WORKDIR}/weston.ini.flutter
-}
-
-do_install:append() {
-    install -m 0644 ${WORKDIR}/weston.ini.flutter ${D}${weston_ini_dir}/
-}
-
-PACKAGE_BEFORE_PN += "${PN}-flutter"
-
-FILES:${PN}-flutter = "${weston_ini_dir}/weston.ini.flutter"
-
-RPROVIDES:${PN}-flutter = "weston-ini"
-RCONFLICTS:${PN}-flutter = "${PN}"
-ALTERNATIVE:${PN}-flutter = "weston.ini"
-ALTERNATIVE_TARGET_${PN}-flutter = "${weston_ini_dir}/weston.ini.flutter"