diff options
author | Scott Murray <scott.murray@konsulko.com> | 2024-05-01 16:57:17 -0400 |
---|---|---|
committer | Jan-Simon Moeller <jsmoeller@linuxfoundation.org> | 2024-05-29 10:27:17 +0000 |
commit | 18058d1ed6ed4235505870067837a26a4864a117 (patch) | |
tree | 132a2cc1452a8c155d2e937a9b6751123bc0f688 /recipes-graphics/wayland | |
parent | e3dad1344fee65f54b639f541c7f10352088462b (diff) |
Replace agl-demo* features with preconfigured images
Changes:
- Remove the agl-demo-preload and agl-demo-cluster-support setup
features.
- Make the agl-weston-remoting setup feature a dependency of the
agl-demo feature. To accommodate this with respect to avoiding
putting the remote-output display configuration into generated
weston.ini files when not required, the logic for that has been
moved from meta-agl-core's weston-ini-conf recipe, and extra
weston-ini-conf-* packages with the remote output support enabled
are now generated to be used in images when required.
- Add *-preconfigured versions of the images useful in a full demo
setup (i.e. with "green machine" for tradeshows). These images
have the configuration tweaks that the build setup features
enabled with conditional logic baked in.
- Remove now unnecessary connman-conf bbappend, we now assume that
the IVI and cluster IP addresses are assigned as 192.168.10.2
and 192.168.10.3 via DHCP in a full demo setup.
Notes:
- The cluster support in the *-preconfigured images assumes that
the IVI board is at IP address 192.168.10.2, and both boards are
in the 192.168.10.x subnet.
Bug-AGL: SPEC-5138
Change-Id: Icc472c6b602fa8fa5570af6cb0acaef853cbfa0f
Signed-off-by: Scott Murray <scott.murray@konsulko.com>
Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl-demo/+/29904
Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
Tested-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
Diffstat (limited to 'recipes-graphics/wayland')
-rw-r--r-- | recipes-graphics/wayland/weston-ini-conf/remote-output.cfg.in | 5 | ||||
-rw-r--r-- | recipes-graphics/wayland/weston-ini-conf_agldemo.inc | 88 |
2 files changed, 86 insertions, 7 deletions
diff --git a/recipes-graphics/wayland/weston-ini-conf/remote-output.cfg.in b/recipes-graphics/wayland/weston-ini-conf/remote-output.cfg.in new file mode 100644 index 000000000..940cbdd0c --- /dev/null +++ b/recipes-graphics/wayland/weston-ini-conf/remote-output.cfg.in @@ -0,0 +1,5 @@ +[remote-output] +name=remote-1 +mode=640x720@30 +host=192.168.10.3 +port=5005 diff --git a/recipes-graphics/wayland/weston-ini-conf_agldemo.inc b/recipes-graphics/wayland/weston-ini-conf_agldemo.inc index 5c7b9feeb..11818f686 100644 --- a/recipes-graphics/wayland/weston-ini-conf_agldemo.inc +++ b/recipes-graphics/wayland/weston-ini-conf_agldemo.inc @@ -1,28 +1,102 @@ FILESEXTRAPATHS:prepend := "${THISDIR}/weston-ini-conf:" -SRC_URI += "file://weston.ini.kvm.in" +SRC_URI += " \ + file://remote-output.cfg.in \ + file://weston.ini.kvm.in \ +" +# Options for the user to change in local.conf +# e.g. REMOTING_OUTPUT_MODE = "1080x1488" +REMOTING_OUTPUT_MODE ??= "640x720@30" +REMOTING_OUTPUT_HOST ??= "192.168.10.3" +REMOTING_OUTPUT_PORT ??= "5005" + +# Default app IDs for KVM guests GUEST_VM1_IMAGE ?= "agl-ivi-demo-flutter" GUEST_VM2_IMAGE ?= "agl-cluster-demo-flutter" +do_configure:append() { + # Standalone cluster support version + sed -e "s#host=.*#host=${REMOTING_OUTPUT_HOST}#" \ + -e "s#port=.*#port=${REMOTING_OUTPUT_PORT}#" \ + ${WORKDIR}/remote-output.cfg.in > ${WORKDIR}/remote-output.cfg + + # KVM guest cluster version + sed -e "s#host=.*#host=172.16.10.3#" \ + -e "s#port=.*#port=${REMOTING_OUTPUT_PORT}#" \ + ${WORKDIR}/remote-output.cfg.in > ${WORKDIR}/remote-output-kvm.cfg +} + do_compile:append() { - # Start with a canned configuration for a KVM host, filling in + # Create regular and KVM remoting enabled versions of the default + # portrait and landscape demo IVI configurations + for c in weston.ini.default weston.ini.landscape; do + cp ${WORKDIR}/$c ${WORKDIR}/${c}-remoting + echo >> ${WORKDIR}/${c}-remoting + cat ${WORKDIR}/remote-output.cfg >> ${WORKDIR}/${c}-remoting + + cp ${WORKDIR}/$c ${WORKDIR}/${c}-remoting-kvm + echo >> ${WORKDIR}/${c}-remoting-kvm + cat ${WORKDIR}/remote-output-kvm.cfg >> ${WORKDIR}/${c}-remoting-kvm + done + + # Create a canned configuration for the 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" \ + sed -e "s/@GUEST_VM1_ID@/${GUEST_VM1_IMAGE}/g" \ + -e "s/@GUEST_VM2_ID@/${GUEST_VM2_IMAGE}/g" \ ${WORKDIR}/weston.ini.kvm.in > ${WORKDIR}/weston.ini.kvm } do_install:append() { + install -m 0644 ${WORKDIR}/weston.ini.default-remoting ${D}${weston_ini_dir}/ + install -m 0644 ${WORKDIR}/weston.ini.default-remoting-kvm ${D}${weston_ini_dir}/ + install -m 0644 ${WORKDIR}/weston.ini.landscape-remoting ${D}${weston_ini_dir}/ + install -m 0644 ${WORKDIR}/weston.ini.landscape-remoting-kvm ${D}${weston_ini_dir}/ install -m 0644 ${WORKDIR}/weston.ini.kvm ${D}${weston_ini_dir}/ } -PACKAGE_BEFORE_PN += "${PN}-kvm" +# remoting -FILES:${PN}-kvm = "${weston_ini_dir}/weston.ini.kvm" +PACKAGE_BEFORE_PN += "${PN}-remoting" +FILES:${PN}-remoting = "${weston_ini_dir}/weston.ini.default-remoting" +RPROVIDES:${PN}-remoting = "weston-ini" +ALTERNATIVE:${PN}-remoting = "weston.ini" +ALTERNATIVE_TARGET_${PN}-remoting = "${weston_ini_dir}/weston.ini.default-remoting" +ALTERNATIVE_PRIORITY_${PN}-remoting = "30" + +# remoting-kvm +PACKAGE_BEFORE_PN += "${PN}-remoting-kvm" +FILES:${PN}-remoting-kvm = "${weston_ini_dir}/weston.ini.default-remoting-kvm" +RPROVIDES:${PN}-remoting-kvm = "weston-ini" +ALTERNATIVE:${PN}-remoting-kvm = "weston.ini" +ALTERNATIVE_TARGET_${PN}-remoting-kvm = "${weston_ini_dir}/weston.ini.default-remoting-kvm" +ALTERNATIVE_PRIORITY_${PN}-remoting-kvm = "35" + +# landscape-remoting + +PACKAGE_BEFORE_PN += "${PN}-landscape-remoting" +FILES:${PN}-landscape-remoting = "${weston_ini_dir}/weston.ini.landscape-remoting" +RPROVIDES:${PN}-landscape-remoting = "weston-ini" +ALTERNATIVE:${PN}-landscape-remoting = "weston.ini" +ALTERNATIVE_TARGET_${PN}-landscape-remoting = "${weston_ini_dir}/weston.ini.landscape-remoting" +ALTERNATIVE_PRIORITY_${PN}-landscape-remoting = "31" + +# landscape-remoting-kvm + +PACKAGE_BEFORE_PN += "${PN}-landscape-remoting-kvm" +FILES:${PN}-landscape-remoting-kvm = "${weston_ini_dir}/weston.ini.landscape-remoting-kvm" +RPROVIDES:${PN}-landscape-remoting-kvm = "weston-ini" +ALTERNATIVE:${PN}-landscape-remoting-kvm = "weston.ini" +ALTERNATIVE_TARGET_${PN}-landscape-remoting-kvm = "${weston_ini_dir}/weston.ini.landscape-remoting-kvm" +ALTERNATIVE_PRIORITY_${PN}-landscape-remoting-kvm = "36" + +# kvm + +PACKAGE_BEFORE_PN += "${PN}-kvm" +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" +ALTERNATIVE_PRIORITY_${PN}-kvm = "40" |