From b8f5c41d1d447795ffa72e3ceeeaf12f6f0e1605 Mon Sep 17 00:00:00 2001
From: Scott Murray <scott.murray@konsulko.com>
Date: Thu, 23 May 2024 10:21:50 -0400
Subject: Update recipes for transition to UNPACKDIR

Update recipes to handle the transition to using UNPACKDIR as the
destination for unpacked files.  For recipes that had been using
S = WORKDIR, the approach used in meta-openembedded has been
followed, i.e. using UNPACKDIR in tasks for consistency.

Bug-AGL: SPEC-5147

Change-Id: I42b2b474be163c66e11a449de6eec7d748e00fbb
Signed-off-by: Scott Murray <scott.murray@konsulko.com>
---
 .../agl-vss-proxy/agl-vss-proxy_git.bb             |  2 +-
 .../btwilink-disable-conf_1.0.bb                   | 17 ++++++
 .../kuksa-val/can-dev-helper_1.0.bb                |  7 ++-
 .../kuksa-val/kuksa-can-provider-conf-agl.bb       |  8 +--
 .../kuksa-can-provider-conf-control-panel.bb       |  2 +-
 .../kuksa-can-provider-conf-gw-control-panel.bb    |  2 +-
 .../kuksa-can-provider-conf-gw-hardware.bb         |  6 +-
 .../kuksa-val/kuksa-certificates-agl.bb            | 15 +++--
 .../kuksa-val/kuksa-databroker-agl-demo-cluster.bb |  5 +-
 .../kuksa-val/kuksa-databroker-agl.bb              |  5 +-
 recipes-connectivity/vss/vss-agl_4.2.bb            | 64 ++++++++++++++++++++++
 11 files changed, 113 insertions(+), 20 deletions(-)
 create mode 100644 recipes-connectivity/btwilink-disable-conf/btwilink-disable-conf_1.0.bb
 create mode 100644 recipes-connectivity/vss/vss-agl_4.2.bb

(limited to 'recipes-connectivity')

diff --git a/recipes-connectivity/agl-vss-proxy/agl-vss-proxy_git.bb b/recipes-connectivity/agl-vss-proxy/agl-vss-proxy_git.bb
index b16116e65..41a55c901 100644
--- a/recipes-connectivity/agl-vss-proxy/agl-vss-proxy_git.bb
+++ b/recipes-connectivity/agl-vss-proxy/agl-vss-proxy_git.bb
@@ -39,7 +39,7 @@ do_install:append() {
     # until a packaging/sandboxing/MAC scheme is (re)implemented or
     # something like OAuth is plumbed in as an alternative.
     install -d ${D}${sysconfdir}/agl-vss-proxy
-    install -m 0644 ${WORKDIR}/agl-vss-proxy.token ${D}${sysconfdir}/agl-vss-proxy/
+    install -m 0644 ${UNPACKDIR}/agl-vss-proxy.token ${D}${sysconfdir}/agl-vss-proxy/
 }
 
 FILES:${PN} += "${systemd_system_unitdir}"
diff --git a/recipes-connectivity/btwilink-disable-conf/btwilink-disable-conf_1.0.bb b/recipes-connectivity/btwilink-disable-conf/btwilink-disable-conf_1.0.bb
new file mode 100644
index 000000000..a6807a0b3
--- /dev/null
+++ b/recipes-connectivity/btwilink-disable-conf/btwilink-disable-conf_1.0.bb
@@ -0,0 +1,17 @@
+SUMMARY = "btwilink module disabling modprobe configuration"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
+
+SRC_URI = "file://btwilink-disable.conf"
+
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
+
+COMPATIBLE_MACHINE = "m3ulcb|h3ulcb"
+
+do_compile[noexec] = "1"
+
+do_install() {
+    install -d ${D}${sysconfdir}/modprobe.d
+    install -m 0644 ${UNPACKDIR}/btwilink-disable.conf ${D}${sysconfdir}/modprobe.d
+}
diff --git a/recipes-connectivity/kuksa-val/can-dev-helper_1.0.bb b/recipes-connectivity/kuksa-val/can-dev-helper_1.0.bb
index 90f5ff1cd..ae99006c5 100644
--- a/recipes-connectivity/kuksa-val/can-dev-helper_1.0.bb
+++ b/recipes-connectivity/kuksa-val/can-dev-helper_1.0.bb
@@ -6,6 +6,9 @@ SRC_URI = "file://can-dev-helper.service \
            file://can-dev-helper.sh \
 "
 
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
+
 inherit systemd allarch
 
 SYSTEMD_SERVICE:${PN} = "${BPN}.service"
@@ -14,8 +17,8 @@ do_configure[noexec] = "1"
 do_compile[noexec] = "1"
 
 do_install() {
-    install -D -m 0644 ${WORKDIR}/${BPN}.service ${D}${systemd_system_unitdir}/${BPN}.service
-    install -D -m 0755 ${WORKDIR}/${BPN}.sh ${D}${sbindir}/${BPN}.sh
+    install -D -m 0644 ${UNPACKDIR}/${BPN}.service ${D}${systemd_system_unitdir}/${BPN}.service
+    install -D -m 0755 ${UNPACKDIR}/${BPN}.sh ${D}${sbindir}/${BPN}.sh
 }
 
 FILES:${PN} += "${systemd_system_unitdir}"
diff --git a/recipes-connectivity/kuksa-val/kuksa-can-provider-conf-agl.bb b/recipes-connectivity/kuksa-val/kuksa-can-provider-conf-agl.bb
index aadbb2dd3..dfcf42405 100644
--- a/recipes-connectivity/kuksa-val/kuksa-can-provider-conf-agl.bb
+++ b/recipes-connectivity/kuksa-val/kuksa-can-provider-conf-agl.bb
@@ -17,11 +17,11 @@ do_compile[noexec] = "1"
 
 do_install() {
     install -d ${D}${sysconfdir}/kuksa-can-provider
-    install -m 0644 ${WORKDIR}/config.ini ${D}${sysconfdir}/kuksa-can-provider/
-    install -m 0644 ${WORKDIR}/can-provider.token ${D}${sysconfdir}/kuksa-can-provider/
-    install -m 0644 ${WORKDIR}/dbc_default_values.json ${D}${sysconfdir}/kuksa-can-provider/
+    install -m 0644 ${UNPACKDIR}/config.ini ${D}${sysconfdir}/kuksa-can-provider/
+    install -m 0644 ${UNPACKDIR}/can-provider.token ${D}${sysconfdir}/kuksa-can-provider/
+    install -m 0644 ${UNPACKDIR}/dbc_default_values.json ${D}${sysconfdir}/kuksa-can-provider/
     install -d ${D}${systemd_system_unitdir}/kuksa-can-provider.service.d
-    install -m 0644 ${WORKDIR}/can-dev-helper.conf ${D}${systemd_system_unitdir}/kuksa-can-provider.service.d/
+    install -m 0644 ${UNPACKDIR}/can-dev-helper.conf ${D}${systemd_system_unitdir}/kuksa-can-provider.service.d/
 }
 
 FILES:${PN} += "${systemd_system_unitdir}"
diff --git a/recipes-connectivity/kuksa-val/kuksa-can-provider-conf-control-panel.bb b/recipes-connectivity/kuksa-val/kuksa-can-provider-conf-control-panel.bb
index f34aed010..b149d129d 100644
--- a/recipes-connectivity/kuksa-val/kuksa-can-provider-conf-control-panel.bb
+++ b/recipes-connectivity/kuksa-val/kuksa-can-provider-conf-control-panel.bb
@@ -13,7 +13,7 @@ do_compile[noexec] = "1"
 
 do_install() {
     install -d ${D}${sysconfdir}/default
-    install -m 0644 ${WORKDIR}/kuksa-can-provider.control-panel ${D}${sysconfdir}/default/
+    install -m 0644 ${UNPACKDIR}/kuksa-can-provider.control-panel ${D}${sysconfdir}/default/
 }
 
 ALTERNATIVE_LINK_NAME[kuksa-can-provider.env] = "${sysconfdir}/default/kuksa-can-provider"
diff --git a/recipes-connectivity/kuksa-val/kuksa-can-provider-conf-gw-control-panel.bb b/recipes-connectivity/kuksa-val/kuksa-can-provider-conf-gw-control-panel.bb
index f2e9e6738..8aa4da5e5 100644
--- a/recipes-connectivity/kuksa-val/kuksa-can-provider-conf-gw-control-panel.bb
+++ b/recipes-connectivity/kuksa-val/kuksa-can-provider-conf-gw-control-panel.bb
@@ -13,7 +13,7 @@ do_compile[noexec] = "1"
 
 do_install() {
     install -d ${D}${sysconfdir}/default
-    install -m 0644 ${WORKDIR}/kuksa-can-provider.gw-control-panel ${D}${sysconfdir}/default/
+    install -m 0644 ${UNPACKDIR}/kuksa-can-provider.gw-control-panel ${D}${sysconfdir}/default/
 }
 
 ALTERNATIVE_LINK_NAME[kuksa-can-provider.env] = "${sysconfdir}/default/kuksa-can-provider"
diff --git a/recipes-connectivity/kuksa-val/kuksa-can-provider-conf-gw-hardware.bb b/recipes-connectivity/kuksa-val/kuksa-can-provider-conf-gw-hardware.bb
index 723035b6a..fa13f9955 100644
--- a/recipes-connectivity/kuksa-val/kuksa-can-provider-conf-gw-hardware.bb
+++ b/recipes-connectivity/kuksa-val/kuksa-can-provider-conf-gw-hardware.bb
@@ -18,12 +18,12 @@ do_compile[noexec] = "1"
 
 do_install() {
     install -d ${D}${sysconfdir}/default
-    install -m 0644 ${WORKDIR}/kuksa-can-provider.gw-hardware ${D}${sysconfdir}/default/
+    install -m 0644 ${UNPACKDIR}/kuksa-can-provider.gw-hardware ${D}${sysconfdir}/default/
     install -d ${D}${sysconfdir}/kuksa-can-provider
-    install -m 0644 ${WORKDIR}/config.ini.gw-hardware ${D}${sysconfdir}/kuksa-can-provider/
+    install -m 0644 ${UNPACKDIR}/config.ini.gw-hardware ${D}${sysconfdir}/kuksa-can-provider/
     if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
         install -d ${D}${systemd_system_unitdir}
-        install -m 0644 ${WORKDIR}/kuksa-can-provider-can1.service ${D}${systemd_system_unitdir}
+        install -m 0644 ${UNPACKDIR}/kuksa-can-provider-can1.service ${D}${systemd_system_unitdir}
     fi
 }
 
diff --git a/recipes-connectivity/kuksa-val/kuksa-certificates-agl.bb b/recipes-connectivity/kuksa-val/kuksa-certificates-agl.bb
index 0264ebbd7..a7c216bb7 100644
--- a/recipes-connectivity/kuksa-val/kuksa-certificates-agl.bb
+++ b/recipes-connectivity/kuksa-val/kuksa-certificates-agl.bb
@@ -13,6 +13,9 @@ SRC_URI = "file://CA.pem \
 	   file://jwt.key.pub \
 "
 
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
+
 inherit allarch useradd
 
 USERADD_PACKAGES = "${PN}-server"
@@ -26,12 +29,12 @@ do_install() {
     # genCerts.sh script to have different expiry dates than the
     # upstream defaults, and use AGL as the organization.
     install -d ${D}${sysconfdir}/kuksa-val/
-    install -m 0644 ${WORKDIR}/CA.pem ${D}${sysconfdir}/kuksa-val/
-    install -m 0640 -g 900 ${WORKDIR}/Server.key ${D}${sysconfdir}/kuksa-val/
-    install -m 0640 -g 900 ${WORKDIR}/Server.pem ${D}${sysconfdir}/kuksa-val/
-    install -m 0644 -g 900 ${WORKDIR}/jwt.key.pub ${D}${sysconfdir}/kuksa-val/
-    install -m 0644 ${WORKDIR}/Client.key ${D}${sysconfdir}/kuksa-val/
-    install -m 0644 ${WORKDIR}/Client.pem ${D}${sysconfdir}/kuksa-val/
+    install -m 0644 ${UNPACKDIR}/CA.pem ${D}${sysconfdir}/kuksa-val/
+    install -m 0640 -g 900 ${UNPACKDIR}/Server.key ${D}${sysconfdir}/kuksa-val/
+    install -m 0640 -g 900 ${UNPACKDIR}/Server.pem ${D}${sysconfdir}/kuksa-val/
+    install -m 0644 -g 900 ${UNPACKDIR}/jwt.key.pub ${D}${sysconfdir}/kuksa-val/
+    install -m 0644 ${UNPACKDIR}/Client.key ${D}${sysconfdir}/kuksa-val/
+    install -m 0644 ${UNPACKDIR}/Client.pem ${D}${sysconfdir}/kuksa-val/
 }
 
 PACKAGE_BEFORE_PN += "${PN}-ca ${PN}-server ${PN}-client"
diff --git a/recipes-connectivity/kuksa-val/kuksa-databroker-agl-demo-cluster.bb b/recipes-connectivity/kuksa-val/kuksa-databroker-agl-demo-cluster.bb
index 36b77dbcc..3605e1dc8 100644
--- a/recipes-connectivity/kuksa-val/kuksa-databroker-agl-demo-cluster.bb
+++ b/recipes-connectivity/kuksa-val/kuksa-databroker-agl-demo-cluster.bb
@@ -7,11 +7,14 @@ LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384
 
 SRC_URI = "file://kuksa-databroker.env"
 
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
+
 inherit allarch update-alternatives
 
 do_install() {
     install -d ${D}${sysconfdir}/default
-    install -m 0644 ${WORKDIR}/kuksa-databroker.env ${D}${sysconfdir}/default/kuksa-databroker.agl-demo-cluster-support
+    install -m 0644 ${UNPACKDIR}/kuksa-databroker.env ${D}${sysconfdir}/default/kuksa-databroker.agl-demo-cluster-support
 }
 
 ALTERNATIVE:${PN} = "kuksa-databroker-env"
diff --git a/recipes-connectivity/kuksa-val/kuksa-databroker-agl.bb b/recipes-connectivity/kuksa-val/kuksa-databroker-agl.bb
index 2cee29305..bd8b52ec0 100644
--- a/recipes-connectivity/kuksa-val/kuksa-databroker-agl.bb
+++ b/recipes-connectivity/kuksa-val/kuksa-databroker-agl.bb
@@ -7,11 +7,14 @@ LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384
 
 SRC_URI = "file://kuksa-databroker.env"
 
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
+
 inherit allarch update-alternatives
 
 do_install() {
     install -d ${D}${sysconfdir}/default
-    install -m 0644 ${WORKDIR}/kuksa-databroker.env ${D}${sysconfdir}/default/kuksa-databroker.agl
+    install -m 0644 ${UNPACKDIR}/kuksa-databroker.env ${D}${sysconfdir}/default/kuksa-databroker.agl
 }
 
 ALTERNATIVE:${PN} = "kuksa-databroker-env"
diff --git a/recipes-connectivity/vss/vss-agl_4.2.bb b/recipes-connectivity/vss/vss-agl_4.2.bb
new file mode 100644
index 000000000..fffec8ae6
--- /dev/null
+++ b/recipes-connectivity/vss/vss-agl_4.2.bb
@@ -0,0 +1,64 @@
+SUMMARY = "Vehicle Signal Specification with AGL overlays"
+LICENSE = "MPL-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=9741c346eef56131163e13b9db1241b3"
+
+DEPENDS = "vss-tools-native"
+
+inherit allarch update-alternatives
+
+require recipes-support/vss/vss.inc
+
+SRC_URI += "file://agl_vss_overlay.vspec \
+            file://agl_vss_overlay.vspec.control-panel \
+            file://agl_vss_overlay.vspec.gw-control-panel \
+            file://agl_vss_overlay.vspec.gw-hardware \
+"
+# Since we're not relying on the simple upstream repo Makefile, use
+# best practices and output into a separate directory.
+B = "${WORKDIR}/build"
+
+do_configure[noexec] = "1"
+
+VSPEC2JSON_OPTS = "-e dbc2vss,vss2dbc --no-uuid --json-pretty"
+
+do_compile() {
+    vspec2json.py -I ${S}/spec ${VSPEC2JSON_OPTS} -o ${UNPACKDIR}/agl_vss_overlay.vspec -u ${S}/spec/units.yaml ${S}/spec/VehicleSignalSpecification.vspec vss_rel_${PV}-agl.json
+    vspec2json.py -I ${S}/spec ${VSPEC2JSON_OPTS} -o ${UNPACKDIR}/agl_vss_overlay.vspec.control-panel -u ${S}/spec/units.yaml ${S}/spec/VehicleSignalSpecification.vspec vss_rel_${PV}-agl-control-panel.json
+    vspec2json.py -I ${S}/spec ${VSPEC2JSON_OPTS} -o ${UNPACKDIR}/agl_vss_overlay.vspec.gw-control-panel -u ${S}/spec/units.yaml ${S}/spec/VehicleSignalSpecification.vspec vss_rel_${PV}-agl-gw-control-panel.json
+    vspec2json.py -I ${S}/spec ${VSPEC2JSON_OPTS} -o ${UNPACKDIR}/agl_vss_overlay.vspec.gw-hardware -u ${S}/spec/units.yaml ${S}/spec/VehicleSignalSpecification.vspec vss_rel_${PV}-agl-gw-hardware.json
+}
+
+do_install() {
+    install -d ${D}${datadir}/vss
+    install -m 0644 vss_rel_${PV}-agl.json ${D}${datadir}/vss/
+    install -m 0644 vss_rel_${PV}-agl-control-panel.json ${D}${datadir}/vss/
+    install -m 0644 vss_rel_${PV}-agl-gw-control-panel.json ${D}${datadir}/vss/
+    install -m 0644 vss_rel_${PV}-agl-gw-hardware.json ${D}${datadir}/vss/
+}
+
+PACKAGE_BEFORE_PN += "${PN}-control-panel ${PN}-gw-control-panel ${PN}-gw-hardware"
+
+ALTERNATIVE_LINK_NAME[vss.json] = "${datadir}/vss/vss.json"
+
+ALTERNATIVE:${PN} = "vss.json"
+ALTERNATIVE_TARGET_${PN} = "${datadir}/vss/vss_rel_${PV}-agl.json"
+ALTERNATIVE_PRIORITY_${PN} = "20"
+FILES:${PN} += "${datadir}/vss/vss_rel_${PV}-agl.json"
+
+ALTERNATIVE:${PN}-control-panel = "vss.json"
+ALTERNATIVE_TARGET_${PN}-control-panel = "${datadir}/vss/vss_rel_${PV}-agl-control-panel.json"
+ALTERNATIVE_PRIORITY_${PN}-control-panel = "30"
+FILES:${PN}-control-panel += "${datadir}/vss/vss_rel_${PV}-agl-control-panel.json"
+
+ALTERNATIVE:${PN}-gw-hardware = "vss.json"
+ALTERNATIVE_TARGET_${PN}-gw-hardware = "${datadir}/vss/vss_rel_${PV}-agl-gw-hardware.json"
+ALTERNATIVE_PRIORITY_${PN}-gw-hardware = "31"
+FILES:${PN}-gw-hardware += "${datadir}/vss/vss_rel_${PV}-agl-gw-hardware.json"
+
+# Higher priority than gw-hardware, as we want it to be the default
+# if both are installed (as is the case with the full gateway demo
+# setup).
+ALTERNATIVE:${PN}-gw-control-panel = "vss.json"
+ALTERNATIVE_TARGET_${PN}-gw-control-panel = "${datadir}/vss/vss_rel_${PV}-agl-gw-control-panel.json"
+ALTERNATIVE_PRIORITY_${PN}-gw-control-panel = "32"
+FILES:${PN}-gw-control-panel += "${datadir}/vss/vss_rel_${PV}-agl-gw-control-panel.json"
-- 
cgit 1.2.3-korg