--- /dev/null
+# Helper class for container manager config creation.
+# Assumes that:
+# - Recipe name is 'cm-config-' + <guest name>
+# - Corresponding files {config,system.conf}.<guest name>.in are in
+# the file search path
+# - That references to the DRM lease device name are parameterized
+# with @DRM_LEASE_DEVICE@ in the .in files
+
+python __anonymous() {
+ bpn = d.getVar('BPN')
+ if not bpn.startswith('cm-config-'):
+ bb.error('Recipe name does not start with \'cm-config-\'')
+ config = bpn[10:]
+ d.setVar('CM_CONFIG_NAME', config)
+}
+
+S = "${WORKDIR}"
+
+inherit allarch
+
+DRM_LEASE_DEVICE ??= "card0-HDMI-A-1"
+
+do_configure[noexec] = "1"
+do_compile[noexec] = "1"
+
+do_install:append () {
+ install -m 0755 -d ${D}/opt/container/guests/${CM_CONFIG_NAME}
+ for f in system.conf.${CM_CONFIG_NAME}.in; do
+ sed -e 's|@DRM_LEASE_DEVICE@|${DRM_LEASE_DEVICE}|g' \
+ ${WORKDIR}/$f > ${D}/opt/container/guests/${CM_CONFIG_NAME}/${f%.${CM_CONFIG_NAME}.in}
+ done
+}
+
+FILES:${PN}:append = "/opt/container/guests/${CM_CONFIG_NAME}"
-DESCRIPTION = "AGL flutter IVI demo container config"
-LICENSE = "BSD-3-Clause"
-LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/BSD-3-Clause;md5=550794465ba0ec5312d6919e203a55f9"
-
-SRC_URI = "file://agl-flutter-ivi-demo.json \
- file://system.conf.agl-flutter-ivi-demo.in \
- "
-
-inherit allarch
-
-do_install:append() {
- install -Dm644 ${WORKDIR}/agl-flutter-ivi-demo.json ${D}/opt/container/conf/agl-flutter-ivi-demo.json
- install -d ${D}/opt/container/guests/agl-flutter-ivi-demo/rootfs
- install -d ${D}/opt/container/guests/agl-flutter-ivi-demo/nv
- install -Dm644 ${WORKDIR}/system.conf.agl-flutter-ivi-demo.in ${D}/opt/container/guests/agl-flutter-ivi-demo/system.conf
-}
-
-FILES:${PN} += " \
- /opt/container/conf/* \
- /opt/container/guests/agl-flutter-ivi-demo/* \
- "
+# Container Manager config for AGL flutter IVI demo on R-Car Gen3
+FILESEXTRAPATHS:prepend := "${THISDIR}/cm-config-agl-flutter-ivi-demo:"
-DESCRIPTION = "AGL HTML5 IVI demo container config"
-LICENSE = "BSD-3-Clause"
-LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/BSD-3-Clause;md5=550794465ba0ec5312d6919e203a55f9"
-
-SRC_URI = "file://agl-html5-ivi-demo.json \
- file://system.conf.agl-html5-ivi-demo.in \
- "
-
-inherit allarch
-
-do_install:append() {
- install -Dm644 ${WORKDIR}/agl-html5-ivi-demo.json ${D}/opt/container/conf/agl-html5-ivi-demo.json
- install -d ${D}/opt/container/guests/agl-html5-ivi-demo/rootfs
- install -d ${D}/opt/container/guests/agl-html5-ivi-demo/nv
- install -Dm644 ${WORKDIR}/system.conf.agl-html5-ivi-demo.in ${D}/opt/container/guests/agl-html5-ivi-demo/system.conf
-}
-
-FILES:${PN} += " \
- /opt/container/conf/* \
- /opt/container/guests/agl-html5-ivi-demo/* \
- "
+# Container Manager config for AGL HTML5 IVI demo on R-Car Gen3
+FILESEXTRAPATHS:prepend := "${THISDIR}/cm-config-agl-html5-ivi-demo:"
+++ /dev/null
-[Manager]
-DefaultEnvironment = DLM_RUNTIME_PATH=/var/display/drm-lease-manager
-DefaultEnvironment = DRM_LEASE_DEVICE=card0-HDMI-A-1
-DefaultEnvironment = PIPEWIRE_RUNTIME_DIR=/var
+++ /dev/null
-[Manager]
-DefaultEnvironment = DLM_RUNTIME_PATH=/var/display/drm-lease-manager
-DefaultEnvironment = DRM_LEASE_DEVICE=card0-HDMI-A-1
-DefaultEnvironment = PIPEWIRE_RUNTIME_DIR=/var
-DESCRIPTION = "AGL Qt IVI demo container config"
-LICENSE = "BSD-3-Clause"
-LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/BSD-3-Clause;md5=550794465ba0ec5312d6919e203a55f9"
-
-SRC_URI = "file://agl-qt-ivi-demo.json \
- file://system.conf.agl-qt-ivi.in \
- "
-
-inherit allarch
-
-do_install:append() {
- install -Dm644 ${WORKDIR}/agl-qt-ivi-demo.json ${D}/opt/container/conf/agl-qt-ivi-demo.json
- install -d ${D}/opt/container/guests/agl-qt-ivi-demo/rootfs
- install -d ${D}/opt/container/guests/agl-qt-ivi-demo/nv
- install -Dm644 ${WORKDIR}/system.conf.agl-qt-ivi.in ${D}/opt/container/guests/agl-qt-ivi-demo/system.conf
-}
-
-FILES:${PN} += " \
- /opt/container/conf/* \
- /opt/container/guests/agl-qt-ivi-demo/* \
- "
+# Container Manager config for AGL Qt IVI demo on R-Car Gen3
+FILESEXTRAPATHS:prepend := "${THISDIR}/cm-config-agl-qt-ivi-demo:"
+++ /dev/null
-[Manager]
-DefaultEnvironment = DLM_RUNTIME_PATH=/var/display/drm-lease-manager
-DefaultEnvironment = DRM_LEASE_DEVICE=card0-HDMI-A-2
-DefaultEnvironment = QT_QPA_PLATFORM=wayland
-DefaultEnvironment = QT_QPA_PLATFORM_PLUGIN_PATH=/usr/lib/plugins/
-DefaultEnvironment = QML_IMPORT_PATH=/usr/lib/qml/
-DefaultEnvironment = QML2_IMPORT_PATH=/usr/lib/qml/
-DefaultEnvironment = QT_WAYLAND_SHELL_INTEGRATION=xdg-shell
# Container Manager config for cluster demo on R-Car Gen3
FILESEXTRAPATHS:prepend := "${THISDIR}/cm-config-cluster-demo:"
+
+require conf/include/drm-lease-multi-display.inc
+
+# If you want to change display assign in your board, please change this line in your recipe.
+DRM_LEASE_DEVICE ?= "${@bb.utils.contains("HAS_MULTI_DISPLAY", "1", "card0-HDMI-A-2", "card0-HDMI-A-1" ,d)}"
-require multi-display.inc
+require conf/include/drm-lease-multi-display.inc
FILESEXTRAPATHS:prepend := "${THISDIR}/${BPN}:"
-require multi-display.inc
+require conf/include/drm-lease-multi-display.inc
FILESEXTRAPATHS:prepend := "${THISDIR}/${BPN}:"
[Manager]
DefaultEnvironment = DLM_RUNTIME_PATH=/var/display/drm-lease-manager
-DefaultEnvironment = DRM_LEASE_DEVICE=card0-HDMI-A-1
+DefaultEnvironment = DRM_LEASE_DEVICE=@DRM_LEASE_DEVICE@
DefaultEnvironment = PIPEWIRE_RUNTIME_DIR=/var
file://system.conf.agl-flutter-ivi-demo.in \
"
-inherit allarch
+inherit cm-config
do_install:append() {
install -Dm644 ${WORKDIR}/agl-flutter-ivi-demo.json ${D}/opt/container/conf/agl-flutter-ivi-demo.json
install -d ${D}/opt/container/guests/agl-flutter-ivi-demo/rootfs
install -d ${D}/opt/container/guests/agl-flutter-ivi-demo/nv
- install -Dm644 ${WORKDIR}/system.conf.agl-flutter-ivi-demo.in ${D}/opt/container/guests/agl-flutter-ivi-demo/system.conf
}
FILES:${PN} += " \
[Manager]
DefaultEnvironment = DLM_RUNTIME_PATH=/var/display/drm-lease-manager
-DefaultEnvironment = DRM_LEASE_DEVICE=card0-HDMI-A-1
+DefaultEnvironment = DRM_LEASE_DEVICE=@DRM_LEASE_DEVICE@
DefaultEnvironment = PIPEWIRE_RUNTIME_DIR=/var
file://system.conf.agl-html5-ivi-demo.in \
"
-inherit allarch
+inherit cm-config
do_install:append() {
install -Dm644 ${WORKDIR}/agl-html5-ivi-demo.json ${D}/opt/container/conf/agl-html5-ivi-demo.json
install -d ${D}/opt/container/guests/agl-html5-ivi-demo/rootfs
install -d ${D}/opt/container/guests/agl-html5-ivi-demo/nv
- install -Dm644 ${WORKDIR}/system.conf.agl-html5-ivi-demo.in ${D}/opt/container/guests/agl-html5-ivi-demo/system.conf
}
FILES:${PN} += " \
[Manager]
DefaultEnvironment = DLM_RUNTIME_PATH=/var/display/drm-lease-manager
-DefaultEnvironment = DRM_LEASE_DEVICE=card0-HDMI-A-1
+DefaultEnvironment = DRM_LEASE_DEVICE=@DRM_LEASE_DEVICE@
DefaultEnvironment = PIPEWIRE_RUNTIME_DIR=/var
+++ /dev/null
-[Manager]
-DefaultEnvironment = DLM_RUNTIME_PATH=/var/display/drm-lease-manager
-DefaultEnvironment = DRM_LEASE_DEVICE=card0-HDMI-A-1
-DefaultEnvironment = PIPEWIRE_RUNTIME_DIR=/var
LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/BSD-3-Clause;md5=550794465ba0ec5312d6919e203a55f9"
SRC_URI = "file://agl-momi-ivi-demo.json \
- file://system.conf.agl-momi-ivi.in \
+ file://system.conf.agl-momi-ivi-demo.in \
"
-inherit allarch
+inherit cm-config
do_install:append() {
install -Dm644 ${WORKDIR}/agl-momi-ivi-demo.json ${D}/opt/container/conf/agl-momi-ivi-demo.json
install -d ${D}/opt/container/guests/agl-momi-ivi-demo/rootfs
install -d ${D}/opt/container/guests/agl-momi-ivi-demo/nv
- install -Dm644 ${WORKDIR}/system.conf.agl-momi-ivi.in ${D}/opt/container/guests/agl-momi-ivi-demo/system.conf
}
FILES:${PN} += " \
[Manager]
DefaultEnvironment = DLM_RUNTIME_PATH=/var/display/drm-lease-manager
-DefaultEnvironment = DRM_LEASE_DEVICE=card0-HDMI-A-1
+DefaultEnvironment = DRM_LEASE_DEVICE=@DRM_LEASE_DEVICE@
DefaultEnvironment = PIPEWIRE_RUNTIME_DIR=/var
+++ /dev/null
-[Manager]
-DefaultEnvironment = DLM_RUNTIME_PATH=/var/display/drm-lease-manager
-DefaultEnvironment = DRM_LEASE_DEVICE=card0-HDMI-A-1
-DefaultEnvironment = PIPEWIRE_RUNTIME_DIR=/var
LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/BSD-3-Clause;md5=550794465ba0ec5312d6919e203a55f9"
SRC_URI = "file://agl-qt-ivi-demo.json \
- file://system.conf.agl-qt-ivi.in \
+ file://system.conf.agl-qt-ivi-demo.in \
"
-inherit allarch
+inherit cm-config
do_install:append() {
install -Dm644 ${WORKDIR}/agl-qt-ivi-demo.json ${D}/opt/container/conf/agl-qt-ivi-demo.json
install -d ${D}/opt/container/guests/agl-qt-ivi-demo/rootfs
install -d ${D}/opt/container/guests/agl-qt-ivi-demo/nv
- install -Dm644 ${WORKDIR}/system.conf.agl-qt-ivi.in ${D}/opt/container/guests/agl-qt-ivi-demo/system.conf
}
FILES:${PN} += " \
[Manager]
DefaultEnvironment = DLM_RUNTIME_PATH=/var/display/drm-lease-manager
-DefaultEnvironment = DRM_LEASE_DEVICE=card0-HDMI-A-2
+DefaultEnvironment = DRM_LEASE_DEVICE=@DRM_LEASE_DEVICE@
DefaultEnvironment = QT_QPA_PLATFORM=wayland
DefaultEnvironment = QT_QPA_PLATFORM_PLUGIN_PATH=/usr/lib/plugins/
DefaultEnvironment = QML_IMPORT_PATH=/usr/lib/qml/
file://system.conf.cluster-demo.in \
"
-inherit allarch
+inherit cm-config
do_install:append() {
install -Dm644 ${WORKDIR}/cluster-demo.json ${D}/opt/container/conf/cluster-demo.json
install -d ${D}/opt/container/guests/cluster-demo/rootfs
install -d ${D}/opt/container/guests/cluster-demo/nv
- install -Dm644 ${WORKDIR}/system.conf.cluster-demo.in ${D}/opt/container/guests/cluster-demo/system.conf
}
FILES:${PN} += " \