All of lore.kernel.org
 help / color / mirror / Atom feed
* [cip-dev][isar-cip-core][PATCH 0/4] Use SWUpdate from salsa.debian.org
@ 2021-10-05 14:13 ` Quirin Gylstorff
  0 siblings, 0 replies; 13+ messages in thread
From: Q. Gylstorff @ 2021-10-05 14:13 UTC (permalink / raw)
  To: jan.kiszka, cip-dev

From: Quirin Gylstorff <quirin.gylstorff@siemens.com>

This patch series uses the source from sala.debian.org for the build of SWUpdate.

The build is patched to contain most of the previous build option from swupdate-config.bbclass.

The recipes support Debian Buster and Debian Bullseye.

Quirin Gylstorff (4):
  swupdate: Move handler to own recipe
  swupdate: Use dpkg-gbp build with salsa
  swupdate-handler: Use same lua version as swupdate-debian-gbp
  swupdate: remove version 2021.04+isar-git

 classes/kconfig-snippets.bbclass              | 90 -------------------
 classes/swupdate-config.bbclass               | 89 ------------------
 kas/opt/swupdate.yml                          |  1 +
 .../swupdate.handler.efibootguard.ini         |  0
 .../files/swupdate.handler.efibootguard.ini   |  0
 .../swupdate-handlers_0.1.bb                  | 36 ++++++++
 ...dd-option-to-build-with-efibootguard.patch | 39 ++++++++
 .../0002-debian-rules-Add-CONFIG_MTD.patch    | 27 ++++++
 ...-debian-config-Make-signing-optional.patch | 40 +++++++++
 ...onfig-Make-image-encryption-optional.patch | 40 +++++++++
 ...ules-Add-Embedded-Lua-handler-option.patch | 30 +++++++
 ...es-Add-option-to-disable-fs-creation.patch | 47 ++++++++++
 ...ules-Add-option-to-disable-webserver.patch | 42 +++++++++
 ...Make-CONFIG_HW_COMPATIBILTY-optional.patch | 40 +++++++++
 ...ules-Add-Embedded-Lua-handler-option.patch | 30 +++++++
 ...prepare-build-for-isar-debian-buster.patch | 72 +++++++++++++++
 .../swupdate/files/debian/changelog.tmpl      |  6 --
 recipes-core/swupdate/files/debian/compat     |  1 -
 .../swupdate/files/debian/control.tmpl        | 15 ----
 recipes-core/swupdate/files/debian/copyright  | 36 --------
 recipes-core/swupdate/files/debian/rules.tmpl | 31 -------
 .../swupdate/files/debian/swupdate.examples   |  2 -
 .../swupdate/files/debian/swupdate.install    |  2 -
 .../swupdate/files/debian/swupdate.manpages   |  5 --
 .../swupdate/files/debian/swupdate.tmpfile    |  2 -
 recipes-core/swupdate/files/debian/watch      | 12 ---
 recipes-core/swupdate/files/postinst          |  2 -
 recipes-core/swupdate/files/swupdate.cfg      |  6 --
 .../swupdate/files/swupdate.service.example   | 11 ---
 .../swupdate/files/swupdate.socket.example    | 11 ---
 .../swupdate/files/swupdate.socket.tmpl       | 13 ---
 .../swupdate/files/swupdate_defconfig         | 83 -----------------
 .../swupdate_defconfig_efibootguard.snippet   |  3 -
 .../files/swupdate_defconfig_lua.snippet      |  2 -
 .../swupdate_defconfig_luahandler.snippet     |  4 -
 .../files/swupdate_defconfig_mtd.snippet      |  1 -
 .../files/swupdate_defconfig_u-boot.snippet   |  3 -
 .../files/swupdate_defconfig_ubi.snippet      |  6 --
 recipes-core/swupdate/swupdate.bb             | 61 -------------
 recipes-core/swupdate/swupdate.inc            | 54 +++++++++++
 .../swupdate/swupdate_2021.04-1+debian-gbp.bb | 47 ++++++++++
 41 files changed, 545 insertions(+), 497 deletions(-)
 delete mode 100644 classes/kconfig-snippets.bbclass
 delete mode 100644 classes/swupdate-config.bbclass
 rename recipes-core/{swupdate => swupdate-handlers}/files/secureboot/swupdate.handler.efibootguard.ini (100%)
 rename recipes-core/{swupdate => swupdate-handlers}/files/swupdate.handler.efibootguard.ini (100%)
 create mode 100644 recipes-core/swupdate-handlers/swupdate-handlers_0.1.bb
 create mode 100644 recipes-core/swupdate/files/0001-debian-Add-option-to-build-with-efibootguard.patch
 create mode 100644 recipes-core/swupdate/files/0002-debian-rules-Add-CONFIG_MTD.patch
 create mode 100644 recipes-core/swupdate/files/0003-debian-config-Make-signing-optional.patch
 create mode 100644 recipes-core/swupdate/files/0004-debian-config-Make-image-encryption-optional.patch
 create mode 100644 recipes-core/swupdate/files/0005-debian-rules-Add-Embedded-Lua-handler-option.patch
 create mode 100644 recipes-core/swupdate/files/0005-debian-rules-Add-option-to-disable-fs-creation.patch
 create mode 100644 recipes-core/swupdate/files/0006-debian-rules-Add-option-to-disable-webserver.patch
 create mode 100644 recipes-core/swupdate/files/0007-debian-Make-CONFIG_HW_COMPATIBILTY-optional.patch
 create mode 100644 recipes-core/swupdate/files/0008-debian-rules-Add-Embedded-Lua-handler-option.patch
 create mode 100644 recipes-core/swupdate/files/0009-debian-prepare-build-for-isar-debian-buster.patch
 delete mode 100644 recipes-core/swupdate/files/debian/changelog.tmpl
 delete mode 100644 recipes-core/swupdate/files/debian/compat
 delete mode 100644 recipes-core/swupdate/files/debian/control.tmpl
 delete mode 100644 recipes-core/swupdate/files/debian/copyright
 delete mode 100755 recipes-core/swupdate/files/debian/rules.tmpl
 delete mode 100644 recipes-core/swupdate/files/debian/swupdate.examples
 delete mode 100644 recipes-core/swupdate/files/debian/swupdate.install
 delete mode 100644 recipes-core/swupdate/files/debian/swupdate.manpages
 delete mode 100644 recipes-core/swupdate/files/debian/swupdate.tmpfile
 delete mode 100644 recipes-core/swupdate/files/debian/watch
 delete mode 100644 recipes-core/swupdate/files/postinst
 delete mode 100644 recipes-core/swupdate/files/swupdate.cfg
 delete mode 100644 recipes-core/swupdate/files/swupdate.service.example
 delete mode 100644 recipes-core/swupdate/files/swupdate.socket.example
 delete mode 100644 recipes-core/swupdate/files/swupdate.socket.tmpl
 delete mode 100644 recipes-core/swupdate/files/swupdate_defconfig
 delete mode 100644 recipes-core/swupdate/files/swupdate_defconfig_efibootguard.snippet
 delete mode 100644 recipes-core/swupdate/files/swupdate_defconfig_lua.snippet
 delete mode 100644 recipes-core/swupdate/files/swupdate_defconfig_luahandler.snippet
 delete mode 100644 recipes-core/swupdate/files/swupdate_defconfig_mtd.snippet
 delete mode 100644 recipes-core/swupdate/files/swupdate_defconfig_u-boot.snippet
 delete mode 100644 recipes-core/swupdate/files/swupdate_defconfig_ubi.snippet
 delete mode 100644 recipes-core/swupdate/swupdate.bb
 create mode 100644 recipes-core/swupdate/swupdate.inc
 create mode 100644 recipes-core/swupdate/swupdate_2021.04-1+debian-gbp.bb

-- 
2.30.2



^ permalink raw reply	[flat|nested] 13+ messages in thread

* [cip-dev][isar-cip-core][PATCH 0/4] Use SWUpdate from salsa.debian.org
@ 2021-10-05 14:13 ` Quirin Gylstorff
  0 siblings, 0 replies; 13+ messages in thread
From: Quirin Gylstorff @ 2021-10-05 14:13 UTC (permalink / raw)
  To: jan.kiszka, cip-dev

[-- Attachment #1: Type: text/plain, Size: 6141 bytes --]

From: Quirin Gylstorff <quirin.gylstorff@siemens.com>

This patch series uses the source from sala.debian.org for the build of SWUpdate.

The build is patched to contain most of the previous build option from swupdate-config.bbclass.

The recipes support Debian Buster and Debian Bullseye.

Quirin Gylstorff (4):
  swupdate: Move handler to own recipe
  swupdate: Use dpkg-gbp build with salsa
  swupdate-handler: Use same lua version as swupdate-debian-gbp
  swupdate: remove version 2021.04+isar-git

 classes/kconfig-snippets.bbclass              | 90 -------------------
 classes/swupdate-config.bbclass               | 89 ------------------
 kas/opt/swupdate.yml                          |  1 +
 .../swupdate.handler.efibootguard.ini         |  0
 .../files/swupdate.handler.efibootguard.ini   |  0
 .../swupdate-handlers_0.1.bb                  | 36 ++++++++
 ...dd-option-to-build-with-efibootguard.patch | 39 ++++++++
 .../0002-debian-rules-Add-CONFIG_MTD.patch    | 27 ++++++
 ...-debian-config-Make-signing-optional.patch | 40 +++++++++
 ...onfig-Make-image-encryption-optional.patch | 40 +++++++++
 ...ules-Add-Embedded-Lua-handler-option.patch | 30 +++++++
 ...es-Add-option-to-disable-fs-creation.patch | 47 ++++++++++
 ...ules-Add-option-to-disable-webserver.patch | 42 +++++++++
 ...Make-CONFIG_HW_COMPATIBILTY-optional.patch | 40 +++++++++
 ...ules-Add-Embedded-Lua-handler-option.patch | 30 +++++++
 ...prepare-build-for-isar-debian-buster.patch | 72 +++++++++++++++
 .../swupdate/files/debian/changelog.tmpl      |  6 --
 recipes-core/swupdate/files/debian/compat     |  1 -
 .../swupdate/files/debian/control.tmpl        | 15 ----
 recipes-core/swupdate/files/debian/copyright  | 36 --------
 recipes-core/swupdate/files/debian/rules.tmpl | 31 -------
 .../swupdate/files/debian/swupdate.examples   |  2 -
 .../swupdate/files/debian/swupdate.install    |  2 -
 .../swupdate/files/debian/swupdate.manpages   |  5 --
 .../swupdate/files/debian/swupdate.tmpfile    |  2 -
 recipes-core/swupdate/files/debian/watch      | 12 ---
 recipes-core/swupdate/files/postinst          |  2 -
 recipes-core/swupdate/files/swupdate.cfg      |  6 --
 .../swupdate/files/swupdate.service.example   | 11 ---
 .../swupdate/files/swupdate.socket.example    | 11 ---
 .../swupdate/files/swupdate.socket.tmpl       | 13 ---
 .../swupdate/files/swupdate_defconfig         | 83 -----------------
 .../swupdate_defconfig_efibootguard.snippet   |  3 -
 .../files/swupdate_defconfig_lua.snippet      |  2 -
 .../swupdate_defconfig_luahandler.snippet     |  4 -
 .../files/swupdate_defconfig_mtd.snippet      |  1 -
 .../files/swupdate_defconfig_u-boot.snippet   |  3 -
 .../files/swupdate_defconfig_ubi.snippet      |  6 --
 recipes-core/swupdate/swupdate.bb             | 61 -------------
 recipes-core/swupdate/swupdate.inc            | 54 +++++++++++
 .../swupdate/swupdate_2021.04-1+debian-gbp.bb | 47 ++++++++++
 41 files changed, 545 insertions(+), 497 deletions(-)
 delete mode 100644 classes/kconfig-snippets.bbclass
 delete mode 100644 classes/swupdate-config.bbclass
 rename recipes-core/{swupdate => swupdate-handlers}/files/secureboot/swupdate.handler.efibootguard.ini (100%)
 rename recipes-core/{swupdate => swupdate-handlers}/files/swupdate.handler.efibootguard.ini (100%)
 create mode 100644 recipes-core/swupdate-handlers/swupdate-handlers_0.1.bb
 create mode 100644 recipes-core/swupdate/files/0001-debian-Add-option-to-build-with-efibootguard.patch
 create mode 100644 recipes-core/swupdate/files/0002-debian-rules-Add-CONFIG_MTD.patch
 create mode 100644 recipes-core/swupdate/files/0003-debian-config-Make-signing-optional.patch
 create mode 100644 recipes-core/swupdate/files/0004-debian-config-Make-image-encryption-optional.patch
 create mode 100644 recipes-core/swupdate/files/0005-debian-rules-Add-Embedded-Lua-handler-option.patch
 create mode 100644 recipes-core/swupdate/files/0005-debian-rules-Add-option-to-disable-fs-creation.patch
 create mode 100644 recipes-core/swupdate/files/0006-debian-rules-Add-option-to-disable-webserver.patch
 create mode 100644 recipes-core/swupdate/files/0007-debian-Make-CONFIG_HW_COMPATIBILTY-optional.patch
 create mode 100644 recipes-core/swupdate/files/0008-debian-rules-Add-Embedded-Lua-handler-option.patch
 create mode 100644 recipes-core/swupdate/files/0009-debian-prepare-build-for-isar-debian-buster.patch
 delete mode 100644 recipes-core/swupdate/files/debian/changelog.tmpl
 delete mode 100644 recipes-core/swupdate/files/debian/compat
 delete mode 100644 recipes-core/swupdate/files/debian/control.tmpl
 delete mode 100644 recipes-core/swupdate/files/debian/copyright
 delete mode 100755 recipes-core/swupdate/files/debian/rules.tmpl
 delete mode 100644 recipes-core/swupdate/files/debian/swupdate.examples
 delete mode 100644 recipes-core/swupdate/files/debian/swupdate.install
 delete mode 100644 recipes-core/swupdate/files/debian/swupdate.manpages
 delete mode 100644 recipes-core/swupdate/files/debian/swupdate.tmpfile
 delete mode 100644 recipes-core/swupdate/files/debian/watch
 delete mode 100644 recipes-core/swupdate/files/postinst
 delete mode 100644 recipes-core/swupdate/files/swupdate.cfg
 delete mode 100644 recipes-core/swupdate/files/swupdate.service.example
 delete mode 100644 recipes-core/swupdate/files/swupdate.socket.example
 delete mode 100644 recipes-core/swupdate/files/swupdate.socket.tmpl
 delete mode 100644 recipes-core/swupdate/files/swupdate_defconfig
 delete mode 100644 recipes-core/swupdate/files/swupdate_defconfig_efibootguard.snippet
 delete mode 100644 recipes-core/swupdate/files/swupdate_defconfig_lua.snippet
 delete mode 100644 recipes-core/swupdate/files/swupdate_defconfig_luahandler.snippet
 delete mode 100644 recipes-core/swupdate/files/swupdate_defconfig_mtd.snippet
 delete mode 100644 recipes-core/swupdate/files/swupdate_defconfig_u-boot.snippet
 delete mode 100644 recipes-core/swupdate/files/swupdate_defconfig_ubi.snippet
 delete mode 100644 recipes-core/swupdate/swupdate.bb
 create mode 100644 recipes-core/swupdate/swupdate.inc
 create mode 100644 recipes-core/swupdate/swupdate_2021.04-1+debian-gbp.bb

-- 
2.30.2


[-- Attachment #2: Type: text/plain, Size: 429 bytes --]


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#6786): https://lists.cip-project.org/g/cip-dev/message/6786
Mute This Topic: https://lists.cip-project.org/mt/86094385/4520388
Group Owner: cip-dev+owner@lists.cip-project.org
Unsubscribe: https://lists.cip-project.org/g/cip-dev/leave/10495289/4520388/727948398/xyzzy [cip-dev@archiver.kernel.org]
-=-=-=-=-=-=-=-=-=-=-=-


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [cip-dev][isar-cip-core][PATCH 1/4] swupdate: Move handler to own recipe
@ 2021-10-05 14:13   ` Quirin Gylstorff
  0 siblings, 0 replies; 13+ messages in thread
From: Q. Gylstorff @ 2021-10-05 14:13 UTC (permalink / raw)
  To: jan.kiszka, cip-dev

From: Quirin Gylstorff <quirin.gylstorff@siemens.com>

Split the SWUpdate lua handler into a seperate recipe in
preparation for using the Debian provided SWUpdate package.

Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
---
 classes/swupdate-config.bbclass               |  8 ----
 kas/opt/swupdate.yml                          |  1 +
 .../swupdate.handler.efibootguard.ini         |  0
 .../files/swupdate.handler.efibootguard.ini   |  0
 .../swupdate-handlers_0.1.bb                  | 37 +++++++++++++++++++
 recipes-core/swupdate/swupdate.bb             | 13 -------
 6 files changed, 38 insertions(+), 21 deletions(-)
 rename recipes-core/{swupdate => swupdate-handlers}/files/secureboot/swupdate.handler.efibootguard.ini (100%)
 rename recipes-core/{swupdate => swupdate-handlers}/files/swupdate.handler.efibootguard.ini (100%)
 create mode 100644 recipes-core/swupdate-handlers/swupdate-handlers_0.1.bb

diff --git a/classes/swupdate-config.bbclass b/classes/swupdate-config.bbclass
index e4879c7..1d57ce1 100644
--- a/classes/swupdate-config.bbclass
+++ b/classes/swupdate-config.bbclass
@@ -17,14 +17,6 @@ BUILD_DEB_DEPENDS = " \
     zlib1g-dev, debhelper, libconfig-dev, libarchive-dev, \
     python-sphinx:native, dh-systemd, libsystemd-dev, libssl-dev, pkg-config"
 
-SRC_URI += " ${@ 'git://gitlab.com/cip-project/cip-sw-updates/swupdate-handler-roundrobin.git;protocol=https;destsuffix=swupdate-handler-roundrobin;name=swupdate-handler-roundrobin;nobranch=1' \
-    if d.getVar('SWUPDATE_USE_ROUND_ROBIN_HANDLER_REPO') == '1' else '' \
-    }"
-SRCREV_swupdate-handler-roundrobin ?= "6f561f136fdbe51d2e9066b934dfcb06b94c6624"
-
-SWUPDATE_USE_ROUND_ROBIN_HANDLER_REPO ?= "1"
-SWUPDATE_LUASCRIPT ?= "swupdate-handler-roundrobin/swupdate_handlers_roundrobin.lua"
-
 KFEATURE_lua = ""
 KFEATURE_lua[BUILD_DEB_DEPENDS] = "liblua5.3-dev"
 KFEATURE_lua[KCONFIG_SNIPPETS] = "file://swupdate_defconfig_lua.snippet"
diff --git a/kas/opt/swupdate.yml b/kas/opt/swupdate.yml
index bd0f6e4..af839f0 100644
--- a/kas/opt/swupdate.yml
+++ b/kas/opt/swupdate.yml
@@ -17,6 +17,7 @@ header:
 local_conf_header:
   swupdate: |
     IMAGE_INSTALL_append = " swupdate"
+    IMAGE_INSTALL_append = " swupdate-handlers"
 
   wic-swu: |
     IMAGE_TYPE = "wic-swu-img"
diff --git a/recipes-core/swupdate/files/secureboot/swupdate.handler.efibootguard.ini b/recipes-core/swupdate-handlers/files/secureboot/swupdate.handler.efibootguard.ini
similarity index 100%
rename from recipes-core/swupdate/files/secureboot/swupdate.handler.efibootguard.ini
rename to recipes-core/swupdate-handlers/files/secureboot/swupdate.handler.efibootguard.ini
diff --git a/recipes-core/swupdate/files/swupdate.handler.efibootguard.ini b/recipes-core/swupdate-handlers/files/swupdate.handler.efibootguard.ini
similarity index 100%
rename from recipes-core/swupdate/files/swupdate.handler.efibootguard.ini
rename to recipes-core/swupdate-handlers/files/swupdate.handler.efibootguard.ini
diff --git a/recipes-core/swupdate-handlers/swupdate-handlers_0.1.bb b/recipes-core/swupdate-handlers/swupdate-handlers_0.1.bb
new file mode 100644
index 0000000..b6cb30d
--- /dev/null
+++ b/recipes-core/swupdate-handlers/swupdate-handlers_0.1.bb
@@ -0,0 +1,37 @@
+#
+# CIP Core, generic profile
+#
+# Copyright (c) Siemens AG, 2021
+#
+# Authors:
+#  Quirin Gylstorff <quirin.gylstorff@siemens.com>
+#
+# SPDX-License-Identifier: MIT
+
+inherit dpkg-raw
+
+DEPENDS = "swupdate"
+DEBIAN_DEPENDS = "swupdate"
+
+SRC_URI += " ${@ 'git://gitlab.com/cip-project/cip-sw-updates/swupdate-handler-roundrobin.git;protocol=https;destsuffix=swupdate-handler-roundrobin;name=swupdate-handler-roundrobin;nobranch=1' \
+    if d.getVar('SWUPDATE_USE_ROUND_ROBIN_HANDLER_REPO') == '1' else '' \
+    }"
+SRCREV_swupdate-handler-roundrobin ?= "6f561f136fdbe51d2e9066b934dfcb06b94c6624"
+
+SWUPDATE_USE_ROUND_ROBIN_HANDLER_REPO ?= "1"
+SWUPDATE_LUASCRIPT ?= "swupdate-handler-roundrobin/swupdate_handlers_roundrobin.lua"
+
+
+SWUPDATE_ROUND_ROBIN_HANDLER_CONFIG ?= "swupdate.handler.${SWUPDATE_BOOTLOADER}.ini"
+SRC_URI += "${@('file://' + d.getVar('SWUPDATE_ROUND_ROBIN_HANDLER_CONFIG')) if d.getVar('SWUPDATE_BOOTLOADER') else ''}"
+
+do_install[cleandirs] = "${D}/etc \
+                         ${D}/usr/share/lua/5.3"
+do_install() {
+    if [ -e ${WORKDIR}/${SWUPDATE_LUASCRIPT} ]; then
+        install -m 0644 ${WORKDIR}/${SWUPDATE_LUASCRIPT} ${D}/usr/share/lua/5.3/swupdate_handlers.lua
+    fi
+    if [ -e ${WORKDIR}/${SWUPDATE_ROUND_ROBIN_HANDLER_CONFIG} ]; then
+       install -m 0644 ${WORKDIR}/${SWUPDATE_ROUND_ROBIN_HANDLER_CONFIG} ${D}/etc/swupdate.handler.ini
+    fi
+}
\ No newline at end of file
diff --git a/recipes-core/swupdate/swupdate.bb b/recipes-core/swupdate/swupdate.bb
index 8bef9ab..a29a797 100644
--- a/recipes-core/swupdate/swupdate.bb
+++ b/recipes-core/swupdate/swupdate.bb
@@ -29,8 +29,6 @@ DEBIAN_DEPENDS = "${shlibs:Depends}, ${misc:Depends}"
 inherit dpkg
 inherit swupdate-config
 
-SWUPDATE_ROUND_ROBIN_HANDLER_CONFIG ?= "swupdate.handler.${SWUPDATE_BOOTLOADER}.ini"
-SRC_URI += "${@('file://' + d.getVar('SWUPDATE_ROUND_ROBIN_HANDLER_CONFIG')) if d.getVar('SWUPDATE_BOOTLOADER') else ''}"
 KFEATURES += "luahandler"
 
 S = "${WORKDIR}/git"
@@ -47,15 +45,4 @@ do_prepare_build() {
     if ! grep -q "configs/${DEFCONFIG}" ${S}/.gitignore; then
         echo "configs/${DEFCONFIG}" >> ${S}/.gitignore
     fi
-    # luahandler
-    if [ -e ${WORKDIR}/${SWUPDATE_LUASCRIPT} ]; then
-        install -m 0644 ${WORKDIR}/${SWUPDATE_LUASCRIPT} ${S}/swupdate_handlers.lua
-    fi
-    if [ -e ${WORKDIR}/swupdate.handler.${SWUPDATE_BOOTLOADER}.ini ]; then
-       install -m 0644 ${WORKDIR}/swupdate.handler.${SWUPDATE_BOOTLOADER}.ini ${S}/swupdate.handler.ini
-       echo "swupdate.handler.ini etc/" >> ${S}/debian/swupdate.install
-    elif [ -e ${WORKDIR}/${SWUPDATE_ROUND_ROBIN_HANDLER_CONFIG} ]; then
-       install -m 0644 ${WORKDIR}/${SWUPDATE_ROUND_ROBIN_HANDLER_CONFIG} ${S}/swupdate.handler.ini
-       echo "swupdate.handler.ini etc/" >> ${S}/debian/swupdate.install
-    fi
 }
-- 
2.30.2



^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [cip-dev][isar-cip-core][PATCH 1/4] swupdate: Move handler to own recipe
@ 2021-10-05 14:13   ` Quirin Gylstorff
  0 siblings, 0 replies; 13+ messages in thread
From: Quirin Gylstorff @ 2021-10-05 14:13 UTC (permalink / raw)
  To: jan.kiszka, cip-dev

[-- Attachment #1: Type: text/plain, Size: 6094 bytes --]

From: Quirin Gylstorff <quirin.gylstorff@siemens.com>

Split the SWUpdate lua handler into a seperate recipe in
preparation for using the Debian provided SWUpdate package.

Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
---
 classes/swupdate-config.bbclass               |  8 ----
 kas/opt/swupdate.yml                          |  1 +
 .../swupdate.handler.efibootguard.ini         |  0
 .../files/swupdate.handler.efibootguard.ini   |  0
 .../swupdate-handlers_0.1.bb                  | 37 +++++++++++++++++++
 recipes-core/swupdate/swupdate.bb             | 13 -------
 6 files changed, 38 insertions(+), 21 deletions(-)
 rename recipes-core/{swupdate => swupdate-handlers}/files/secureboot/swupdate.handler.efibootguard.ini (100%)
 rename recipes-core/{swupdate => swupdate-handlers}/files/swupdate.handler.efibootguard.ini (100%)
 create mode 100644 recipes-core/swupdate-handlers/swupdate-handlers_0.1.bb

diff --git a/classes/swupdate-config.bbclass b/classes/swupdate-config.bbclass
index e4879c7..1d57ce1 100644
--- a/classes/swupdate-config.bbclass
+++ b/classes/swupdate-config.bbclass
@@ -17,14 +17,6 @@ BUILD_DEB_DEPENDS = " \
     zlib1g-dev, debhelper, libconfig-dev, libarchive-dev, \
     python-sphinx:native, dh-systemd, libsystemd-dev, libssl-dev, pkg-config"
 
-SRC_URI += " ${@ 'git://gitlab.com/cip-project/cip-sw-updates/swupdate-handler-roundrobin.git;protocol=https;destsuffix=swupdate-handler-roundrobin;name=swupdate-handler-roundrobin;nobranch=1' \
-    if d.getVar('SWUPDATE_USE_ROUND_ROBIN_HANDLER_REPO') == '1' else '' \
-    }"
-SRCREV_swupdate-handler-roundrobin ?= "6f561f136fdbe51d2e9066b934dfcb06b94c6624"
-
-SWUPDATE_USE_ROUND_ROBIN_HANDLER_REPO ?= "1"
-SWUPDATE_LUASCRIPT ?= "swupdate-handler-roundrobin/swupdate_handlers_roundrobin.lua"
-
 KFEATURE_lua = ""
 KFEATURE_lua[BUILD_DEB_DEPENDS] = "liblua5.3-dev"
 KFEATURE_lua[KCONFIG_SNIPPETS] = "file://swupdate_defconfig_lua.snippet"
diff --git a/kas/opt/swupdate.yml b/kas/opt/swupdate.yml
index bd0f6e4..af839f0 100644
--- a/kas/opt/swupdate.yml
+++ b/kas/opt/swupdate.yml
@@ -17,6 +17,7 @@ header:
 local_conf_header:
   swupdate: |
     IMAGE_INSTALL_append = " swupdate"
+    IMAGE_INSTALL_append = " swupdate-handlers"
 
   wic-swu: |
     IMAGE_TYPE = "wic-swu-img"
diff --git a/recipes-core/swupdate/files/secureboot/swupdate.handler.efibootguard.ini b/recipes-core/swupdate-handlers/files/secureboot/swupdate.handler.efibootguard.ini
similarity index 100%
rename from recipes-core/swupdate/files/secureboot/swupdate.handler.efibootguard.ini
rename to recipes-core/swupdate-handlers/files/secureboot/swupdate.handler.efibootguard.ini
diff --git a/recipes-core/swupdate/files/swupdate.handler.efibootguard.ini b/recipes-core/swupdate-handlers/files/swupdate.handler.efibootguard.ini
similarity index 100%
rename from recipes-core/swupdate/files/swupdate.handler.efibootguard.ini
rename to recipes-core/swupdate-handlers/files/swupdate.handler.efibootguard.ini
diff --git a/recipes-core/swupdate-handlers/swupdate-handlers_0.1.bb b/recipes-core/swupdate-handlers/swupdate-handlers_0.1.bb
new file mode 100644
index 0000000..b6cb30d
--- /dev/null
+++ b/recipes-core/swupdate-handlers/swupdate-handlers_0.1.bb
@@ -0,0 +1,37 @@
+#
+# CIP Core, generic profile
+#
+# Copyright (c) Siemens AG, 2021
+#
+# Authors:
+#  Quirin Gylstorff <quirin.gylstorff@siemens.com>
+#
+# SPDX-License-Identifier: MIT
+
+inherit dpkg-raw
+
+DEPENDS = "swupdate"
+DEBIAN_DEPENDS = "swupdate"
+
+SRC_URI += " ${@ 'git://gitlab.com/cip-project/cip-sw-updates/swupdate-handler-roundrobin.git;protocol=https;destsuffix=swupdate-handler-roundrobin;name=swupdate-handler-roundrobin;nobranch=1' \
+    if d.getVar('SWUPDATE_USE_ROUND_ROBIN_HANDLER_REPO') == '1' else '' \
+    }"
+SRCREV_swupdate-handler-roundrobin ?= "6f561f136fdbe51d2e9066b934dfcb06b94c6624"
+
+SWUPDATE_USE_ROUND_ROBIN_HANDLER_REPO ?= "1"
+SWUPDATE_LUASCRIPT ?= "swupdate-handler-roundrobin/swupdate_handlers_roundrobin.lua"
+
+
+SWUPDATE_ROUND_ROBIN_HANDLER_CONFIG ?= "swupdate.handler.${SWUPDATE_BOOTLOADER}.ini"
+SRC_URI += "${@('file://' + d.getVar('SWUPDATE_ROUND_ROBIN_HANDLER_CONFIG')) if d.getVar('SWUPDATE_BOOTLOADER') else ''}"
+
+do_install[cleandirs] = "${D}/etc \
+                         ${D}/usr/share/lua/5.3"
+do_install() {
+    if [ -e ${WORKDIR}/${SWUPDATE_LUASCRIPT} ]; then
+        install -m 0644 ${WORKDIR}/${SWUPDATE_LUASCRIPT} ${D}/usr/share/lua/5.3/swupdate_handlers.lua
+    fi
+    if [ -e ${WORKDIR}/${SWUPDATE_ROUND_ROBIN_HANDLER_CONFIG} ]; then
+       install -m 0644 ${WORKDIR}/${SWUPDATE_ROUND_ROBIN_HANDLER_CONFIG} ${D}/etc/swupdate.handler.ini
+    fi
+}
\ No newline at end of file
diff --git a/recipes-core/swupdate/swupdate.bb b/recipes-core/swupdate/swupdate.bb
index 8bef9ab..a29a797 100644
--- a/recipes-core/swupdate/swupdate.bb
+++ b/recipes-core/swupdate/swupdate.bb
@@ -29,8 +29,6 @@ DEBIAN_DEPENDS = "${shlibs:Depends}, ${misc:Depends}"
 inherit dpkg
 inherit swupdate-config
 
-SWUPDATE_ROUND_ROBIN_HANDLER_CONFIG ?= "swupdate.handler.${SWUPDATE_BOOTLOADER}.ini"
-SRC_URI += "${@('file://' + d.getVar('SWUPDATE_ROUND_ROBIN_HANDLER_CONFIG')) if d.getVar('SWUPDATE_BOOTLOADER') else ''}"
 KFEATURES += "luahandler"
 
 S = "${WORKDIR}/git"
@@ -47,15 +45,4 @@ do_prepare_build() {
     if ! grep -q "configs/${DEFCONFIG}" ${S}/.gitignore; then
         echo "configs/${DEFCONFIG}" >> ${S}/.gitignore
     fi
-    # luahandler
-    if [ -e ${WORKDIR}/${SWUPDATE_LUASCRIPT} ]; then
-        install -m 0644 ${WORKDIR}/${SWUPDATE_LUASCRIPT} ${S}/swupdate_handlers.lua
-    fi
-    if [ -e ${WORKDIR}/swupdate.handler.${SWUPDATE_BOOTLOADER}.ini ]; then
-       install -m 0644 ${WORKDIR}/swupdate.handler.${SWUPDATE_BOOTLOADER}.ini ${S}/swupdate.handler.ini
-       echo "swupdate.handler.ini etc/" >> ${S}/debian/swupdate.install
-    elif [ -e ${WORKDIR}/${SWUPDATE_ROUND_ROBIN_HANDLER_CONFIG} ]; then
-       install -m 0644 ${WORKDIR}/${SWUPDATE_ROUND_ROBIN_HANDLER_CONFIG} ${S}/swupdate.handler.ini
-       echo "swupdate.handler.ini etc/" >> ${S}/debian/swupdate.install
-    fi
 }
-- 
2.30.2


[-- Attachment #2: Type: text/plain, Size: 429 bytes --]


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#6787): https://lists.cip-project.org/g/cip-dev/message/6787
Mute This Topic: https://lists.cip-project.org/mt/86094386/4520388
Group Owner: cip-dev+owner@lists.cip-project.org
Unsubscribe: https://lists.cip-project.org/g/cip-dev/leave/10495289/4520388/727948398/xyzzy [cip-dev@archiver.kernel.org]
-=-=-=-=-=-=-=-=-=-=-=-


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [cip-dev][isar-cip-core][PATCH 2/4] swupdate: Use dpkg-gbp build with salsa
@ 2021-10-05 14:13   ` Quirin Gylstorff
  0 siblings, 0 replies; 13+ messages in thread
From: Q. Gylstorff @ 2021-10-05 14:13 UTC (permalink / raw)
  To: jan.kiszka, cip-dev

From: Quirin Gylstorff <quirin.gylstorff@siemens.com>

This reduce the maintaince effort for SWUpdate in Debian 11(Bullseye)
and later.

Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
---
 conf/distro/cip-core-bullseye.conf            |  1 +
 conf/distro/cip-core-buster.conf              |  1 +
 ...dd-option-to-build-with-efibootguard.patch | 39 ++++++++++
 .../0002-debian-rules-Add-CONFIG_MTD.patch    | 27 +++++++
 ...-debian-config-Make-signing-optional.patch | 40 +++++++++++
 ...onfig-Make-image-encryption-optional.patch | 40 +++++++++++
 ...ules-Add-Embedded-Lua-handler-option.patch | 30 ++++++++
 ...es-Add-option-to-disable-fs-creation.patch | 47 ++++++++++++
 ...ules-Add-option-to-disable-webserver.patch | 42 +++++++++++
 ...Make-CONFIG_HW_COMPATIBILTY-optional.patch | 40 +++++++++++
 ...ules-Add-Embedded-Lua-handler-option.patch | 30 ++++++++
 ...prepare-build-for-isar-debian-buster.patch | 72 +++++++++++++++++++
 recipes-core/swupdate/swupdate.inc            | 54 ++++++++++++++
 .../swupdate/swupdate_2021.04-1+debian-gbp.bb | 47 ++++++++++++
 14 files changed, 510 insertions(+)
 create mode 100644 recipes-core/swupdate/files/0001-debian-Add-option-to-build-with-efibootguard.patch
 create mode 100644 recipes-core/swupdate/files/0002-debian-rules-Add-CONFIG_MTD.patch
 create mode 100644 recipes-core/swupdate/files/0003-debian-config-Make-signing-optional.patch
 create mode 100644 recipes-core/swupdate/files/0004-debian-config-Make-image-encryption-optional.patch
 create mode 100644 recipes-core/swupdate/files/0005-debian-rules-Add-Embedded-Lua-handler-option.patch
 create mode 100644 recipes-core/swupdate/files/0005-debian-rules-Add-option-to-disable-fs-creation.patch
 create mode 100644 recipes-core/swupdate/files/0006-debian-rules-Add-option-to-disable-webserver.patch
 create mode 100644 recipes-core/swupdate/files/0007-debian-Make-CONFIG_HW_COMPATIBILTY-optional.patch
 create mode 100644 recipes-core/swupdate/files/0008-debian-rules-Add-Embedded-Lua-handler-option.patch
 create mode 100644 recipes-core/swupdate/files/0009-debian-prepare-build-for-isar-debian-buster.patch
 create mode 100644 recipes-core/swupdate/swupdate.inc
 create mode 100644 recipes-core/swupdate/swupdate_2021.04-1+debian-gbp.bb

diff --git a/conf/distro/cip-core-bullseye.conf b/conf/distro/cip-core-bullseye.conf
index 38014b4..9357b6c 100644
--- a/conf/distro/cip-core-bullseye.conf
+++ b/conf/distro/cip-core-bullseye.conf
@@ -14,3 +14,4 @@ require cip-core-common.inc
 
 PREFERRED_VERSION_linux-cip ?= "4.19.%"
 PREFERRED_VERSION_linux-cip-rt ?= "4.19.%"
+PREFERRED_VERSION_swupdate ?= "2021.04-1+debian-gbp"
diff --git a/conf/distro/cip-core-buster.conf b/conf/distro/cip-core-buster.conf
index c5cb39c..61fcb41 100644
--- a/conf/distro/cip-core-buster.conf
+++ b/conf/distro/cip-core-buster.conf
@@ -14,3 +14,4 @@ require cip-core-common.inc
 
 PREFERRED_VERSION_linux-cip ?= "4.19.%"
 PREFERRED_VERSION_linux-cip-rt ?= "4.19.%"
+PREFERRED_VERSION_swupdate ?= "2021.4-git+isar"
diff --git a/recipes-core/swupdate/files/0001-debian-Add-option-to-build-with-efibootguard.patch b/recipes-core/swupdate/files/0001-debian-Add-option-to-build-with-efibootguard.patch
new file mode 100644
index 0000000..00f9a5f
--- /dev/null
+++ b/recipes-core/swupdate/files/0001-debian-Add-option-to-build-with-efibootguard.patch
@@ -0,0 +1,39 @@
+From fe3f090e3764e1e2625d509a56bd521bab507ce7 Mon Sep 17 00:00:00 2001
+From: Quirin Gylstorff <quirin.gylstorff@siemens.com>
+Date: Wed, 15 Sep 2021 12:36:09 +0200
+Subject: [PATCH 1/9] debian: Add option to build with efibootguard
+
+Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
+---
+ debian/control | 1 +
+ debian/rules   | 2 ++
+ 2 files changed, 3 insertions(+)
+
+diff --git a/debian/control b/debian/control
+index 9e43eab..6031537 100644
+--- a/debian/control
++++ b/debian/control
+@@ -28,6 +28,7 @@ Build-Depends: debhelper-compat (= 13),
+                libwebsockets-dev (>= 3.2.0) <!pkg.swupdate.bpo>,
+                liburiparser-dev <!pkg.swupdate.bpo>,
+                libubootenv-dev <pkg.swupdate.uboot>,
++               efibootguard-dev <pkg.swupdate.efibootguard>,
+                libcmocka-dev,
+                pkg-config,
+                gawk,
+diff --git a/debian/rules b/debian/rules
+index 4b55be2..c076839 100755
+--- a/debian/rules
++++ b/debian/rules
+@@ -33,6 +33,8 @@ ifneq (,$(filter pkg.swupdate.uboot,$(DEB_BUILD_PROFILES)))
+ else ifneq (,$(filter pkg.swupdate.grub,$(DEB_BUILD_PROFILES)))
+ 	echo CONFIG_BOOTLOADER_GRUB=y                   >> configs/debian_defconfig
+ 	echo CONFIG_GRUBENV_PATH=\"/boot/grub/grubenv\" >> configs/debian_defconfig
++else ifneq (,$(filter pkg.swupdate.efibootguard,$(DEB_BUILD_PROFILES)))
++	echo CONFIG_BOOTLOADER_EBG=y                    >> configs/debian_defconfig
+ else
+ 	echo CONFIG_BOOTLOADER_NONE=y                   >> configs/debian_defconfig
+ endif
+-- 
+2.30.2
+
diff --git a/recipes-core/swupdate/files/0002-debian-rules-Add-CONFIG_MTD.patch b/recipes-core/swupdate/files/0002-debian-rules-Add-CONFIG_MTD.patch
new file mode 100644
index 0000000..0921aef
--- /dev/null
+++ b/recipes-core/swupdate/files/0002-debian-rules-Add-CONFIG_MTD.patch
@@ -0,0 +1,27 @@
+From 43365f98d70d83dac42913ff907a8a9dd25a4333 Mon Sep 17 00:00:00 2001
+From: Quirin Gylstorff <quirin.gylstorff@siemens.com>
+Date: Wed, 29 Sep 2021 11:29:57 +0200
+Subject: [PATCH 2/9] debian/rules: Add CONFIG_MTD
+
+if pkg.swupdate.bpo is set CONFIG_MTD is disable but not enabled.
+
+Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
+---
+ debian/rules | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/debian/rules b/debian/rules
+index c076839..292133b 100755
+--- a/debian/rules
++++ b/debian/rules
+@@ -20,6 +20,7 @@ endif
+ override_dh_auto_configure:
+ 	cp debian/configs/defconfig  configs/debian_defconfig
+ ifeq (,$(filter pkg.swupdate.bpo,$(DEB_BUILD_PROFILES)))
++	echo CONFIG_MTD=y                  >> configs/debian_defconfig
+ 	echo CONFIG_SWUFORWARDER_HANDLER=y >> configs/debian_defconfig
+ 	echo CONFIG_CFI=y                  >> configs/debian_defconfig
+ 	echo CONFIG_CFIHAMMING1=y          >> configs/debian_defconfig
+-- 
+2.30.2
+
diff --git a/recipes-core/swupdate/files/0003-debian-config-Make-signing-optional.patch b/recipes-core/swupdate/files/0003-debian-config-Make-signing-optional.patch
new file mode 100644
index 0000000..347b316
--- /dev/null
+++ b/recipes-core/swupdate/files/0003-debian-config-Make-signing-optional.patch
@@ -0,0 +1,40 @@
+From 37f9afeeac5483f677b5be41b3d31e6557fcc146 Mon Sep 17 00:00:00 2001
+From: Quirin Gylstorff <quirin.gylstorff@siemens.com>
+Date: Wed, 29 Sep 2021 15:27:51 +0200
+Subject: [PATCH 3/9] debian/config: Make signing optional
+
+Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
+---
+ debian/configs/defconfig | 1 -
+ debian/rules             | 3 +++
+ 2 files changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/debian/configs/defconfig b/debian/configs/defconfig
+index b38aa62..f959e44 100644
+--- a/debian/configs/defconfig
++++ b/debian/configs/defconfig
+@@ -2,7 +2,6 @@ CONFIG_SYSTEMD=y
+ CONFIG_HW_COMPATIBILITY=y
+ CONFIG_DOWNLOAD=y
+ CONFIG_DOWNLOAD_SSL=y
+-CONFIG_SIGNED_IMAGES=y
+ CONFIG_SIGALG_CMS=y
+ CONFIG_ENCRYPTED_IMAGES=y
+ CONFIG_SURICATTA=y
+diff --git a/debian/rules b/debian/rules
+index 292133b..4793c84 100755
+--- a/debian/rules
++++ b/debian/rules
+@@ -39,6 +39,9 @@ else ifneq (,$(filter pkg.swupdate.efibootguard,$(DEB_BUILD_PROFILES)))
+ else
+ 	echo CONFIG_BOOTLOADER_NONE=y                   >> configs/debian_defconfig
+ endif
++ifeq (,$(filter pkg.swupdate.nosigning,$(DEB_BUILD_PROFILES)))
++	echo CONFIG_SIGNED_IMAGES=y >> configs/debian_defconfig
++endif
+ ifneq (,$(filter pkg.swupdate.p11,$(DEB_BUILD_PROFILES)))
+ 	echo CONFIG_PKCS11=y >> configs/debian_defconfig
+ endif
+-- 
+2.30.2
+
diff --git a/recipes-core/swupdate/files/0004-debian-config-Make-image-encryption-optional.patch b/recipes-core/swupdate/files/0004-debian-config-Make-image-encryption-optional.patch
new file mode 100644
index 0000000..45990f8
--- /dev/null
+++ b/recipes-core/swupdate/files/0004-debian-config-Make-image-encryption-optional.patch
@@ -0,0 +1,40 @@
+From b0cfcc9980c6daf6383c6dc51fdbe90e1c7625d5 Mon Sep 17 00:00:00 2001
+From: Quirin Gylstorff <quirin.gylstorff@siemens.com>
+Date: Wed, 29 Sep 2021 15:28:21 +0200
+Subject: [PATCH 4/9] debian/config: Make image encryption optional
+
+Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
+---
+ debian/configs/defconfig | 1 -
+ debian/rules             | 3 +++
+ 2 files changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/debian/configs/defconfig b/debian/configs/defconfig
+index f959e44..8e1a810 100644
+--- a/debian/configs/defconfig
++++ b/debian/configs/defconfig
+@@ -3,7 +3,6 @@ CONFIG_HW_COMPATIBILITY=y
+ CONFIG_DOWNLOAD=y
+ CONFIG_DOWNLOAD_SSL=y
+ CONFIG_SIGALG_CMS=y
+-CONFIG_ENCRYPTED_IMAGES=y
+ CONFIG_SURICATTA=y
+ CONFIG_SURICATTA_SSL=y
+ CONFIG_UPDATE_STATE_CHOICE_BOOTLOADER=y
+diff --git a/debian/rules b/debian/rules
+index 4793c84..6d32d50 100755
+--- a/debian/rules
++++ b/debian/rules
+@@ -42,6 +42,9 @@ endif
+ ifeq (,$(filter pkg.swupdate.nosigning,$(DEB_BUILD_PROFILES)))
+ 	echo CONFIG_SIGNED_IMAGES=y >> configs/debian_defconfig
+ endif
++ifeq (,$(filter pkg.swupdate.noencryption,$(DEB_BUILD_PROFILES)))
++	echo CONFIG_ENCRYPTED_IMAGES=y >> configs/debian_defconfig
++endif
+ ifneq (,$(filter pkg.swupdate.p11,$(DEB_BUILD_PROFILES)))
+ 	echo CONFIG_PKCS11=y >> configs/debian_defconfig
+ endif
+-- 
+2.30.2
+
diff --git a/recipes-core/swupdate/files/0005-debian-rules-Add-Embedded-Lua-handler-option.patch b/recipes-core/swupdate/files/0005-debian-rules-Add-Embedded-Lua-handler-option.patch
new file mode 100644
index 0000000..84665cd
--- /dev/null
+++ b/recipes-core/swupdate/files/0005-debian-rules-Add-Embedded-Lua-handler-option.patch
@@ -0,0 +1,30 @@
+From 0200687ad67d6e5a0e9bbdf2e8c86e3f8e717c5e Mon Sep 17 00:00:00 2001
+From: Quirin Gylstorff <quirin.gylstorff@siemens.com>
+Date: Wed, 29 Sep 2021 11:32:41 +0200
+Subject: [PATCH 5/6] debian/rules: Add Embedded Lua handler option
+
+Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
+---
+ debian/rules | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/debian/rules b/debian/rules
+index 69fd790..9ace348 100755
+--- a/debian/rules
++++ b/debian/rules
+@@ -52,7 +52,12 @@ ifneq (,$(LUA_VERSION))
+ 	echo CONFIG_LUAPKG=\"lua$(LUA_VERSION)\" >> configs/debian_defconfig
+ 	echo CONFIG_LUASCRIPTHANDLER=y           >> configs/debian_defconfig
+ 	echo CONFIG_HANDLER_IN_LUA=y             >> configs/debian_defconfig
++ifneq (,$(filter pkg.swupdate.embeddedlua,$(DEB_BUILD_PROFILES)))
++	echo CONFIG_EMBEDDED_LUA_HANDLER=y                              >> configs/debian_defconfig
++	echo CONFIG_EMBEDDED_LUA_HANDLER_SOURCE=\"/usr/share/lua/$(LUA_VERSION)/swupdate_handlers.lua\" >> configs/debian_defconfig
+ endif
++endif
++
+ 	echo CONFIG_EXTRA_CFLAGS=\"$(CFLAGS) $(CPPFLAGS)\" >> configs/debian_defconfig
+ 	echo CONFIG_EXTRA_LDFLAGS=\"$(LDFLAGS)\"           >> configs/debian_defconfig
+ 	echo CONFIG_EXTRA_LDLIBS=\"$(LDLIBS)\"             >> configs/debian_defconfig
+-- 
+2.30.2
+
diff --git a/recipes-core/swupdate/files/0005-debian-rules-Add-option-to-disable-fs-creation.patch b/recipes-core/swupdate/files/0005-debian-rules-Add-option-to-disable-fs-creation.patch
new file mode 100644
index 0000000..1121923
--- /dev/null
+++ b/recipes-core/swupdate/files/0005-debian-rules-Add-option-to-disable-fs-creation.patch
@@ -0,0 +1,47 @@
+From 22a96e95676123c6ce8800b9d911402704dce9e2 Mon Sep 17 00:00:00 2001
+From: Quirin Gylstorff <quirin.gylstorff@siemens.com>
+Date: Mon, 4 Oct 2021 17:15:56 +0200
+Subject: [PATCH 5/9] debian/rules: Add option to disable fs creation
+
+Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
+---
+ debian/configs/defconfig | 4 ----
+ debian/rules             | 7 +++++++
+ 2 files changed, 7 insertions(+), 4 deletions(-)
+
+diff --git a/debian/configs/defconfig b/debian/configs/defconfig
+index 8e1a810..d011deb 100644
+--- a/debian/configs/defconfig
++++ b/debian/configs/defconfig
+@@ -9,10 +9,6 @@ CONFIG_UPDATE_STATE_CHOICE_BOOTLOADER=y
+ CONFIG_WEBSERVER=y
+ CONFIG_MONGOOSESSL=y
+ CONFIG_ZSTD=y
+-CONFIG_DISKPART=y
+-CONFIG_DISKFORMAT=y
+-CONFIG_FAT_FILESYSTEM=y
+-CONFIG_EXT_FILESYSTEM=y
+ CONFIG_UNIQUEUUID=y
+ CONFIG_RAW=y
+ CONFIG_RDIFFHANDLER=y
+diff --git a/debian/rules b/debian/rules
+index 6d32d50..9349c22 100755
+--- a/debian/rules
++++ b/debian/rules
+@@ -45,6 +45,13 @@ endif
+ ifeq (,$(filter pkg.swupdate.noencryption,$(DEB_BUILD_PROFILES)))
+ 	echo CONFIG_ENCRYPTED_IMAGES=y >> configs/debian_defconfig
+ endif
++ifeq (,$(filter pkg.swupdate.nocreatefs,$(DEB_BUILD_PROFILES)))
++	echo CONFIG_DISKPART=y       >> configs/debian_defconfig
++	echo CONFIG_DISKFORMAT=y     >> configs/debian_defconfig
++	echo CONFIG_FAT_FILESYSTEM=y >> configs/debian_defconfig
++	echo CONFIG_EXT_FILESYSTEM=y >> configs/debian_defconfig
++endif
++
+ ifneq (,$(filter pkg.swupdate.p11,$(DEB_BUILD_PROFILES)))
+ 	echo CONFIG_PKCS11=y >> configs/debian_defconfig
+ endif
+-- 
+2.30.2
+
diff --git a/recipes-core/swupdate/files/0006-debian-rules-Add-option-to-disable-webserver.patch b/recipes-core/swupdate/files/0006-debian-rules-Add-option-to-disable-webserver.patch
new file mode 100644
index 0000000..23a456d
--- /dev/null
+++ b/recipes-core/swupdate/files/0006-debian-rules-Add-option-to-disable-webserver.patch
@@ -0,0 +1,42 @@
+From 9caabe416aca7ca2bf1cd2d8be89cfc89cedf6cd Mon Sep 17 00:00:00 2001
+From: Quirin Gylstorff <quirin.gylstorff@siemens.com>
+Date: Mon, 4 Oct 2021 17:27:11 +0200
+Subject: [PATCH 6/9] debian/rules: Add option to disable webserver
+
+Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
+---
+ debian/configs/defconfig | 2 --
+ debian/rules             | 4 ++++
+ 2 files changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/debian/configs/defconfig b/debian/configs/defconfig
+index d011deb..337fcce 100644
+--- a/debian/configs/defconfig
++++ b/debian/configs/defconfig
+@@ -6,8 +6,6 @@ CONFIG_SIGALG_CMS=y
+ CONFIG_SURICATTA=y
+ CONFIG_SURICATTA_SSL=y
+ CONFIG_UPDATE_STATE_CHOICE_BOOTLOADER=y
+-CONFIG_WEBSERVER=y
+-CONFIG_MONGOOSESSL=y
+ CONFIG_ZSTD=y
+ CONFIG_UNIQUEUUID=y
+ CONFIG_RAW=y
+diff --git a/debian/rules b/debian/rules
+index 9349c22..4574b18 100755
+--- a/debian/rules
++++ b/debian/rules
+@@ -39,6 +39,10 @@ else ifneq (,$(filter pkg.swupdate.efibootguard,$(DEB_BUILD_PROFILES)))
+ else
+ 	echo CONFIG_BOOTLOADER_NONE=y                   >> configs/debian_defconfig
+ endif
++ifeq (,$(filter pkg.swupdate.nowebserver,$(DEB_BUILD_PROFILES)))
++	echo CONFIG_WEBSERVER=y   >> configs/debian_defconfig
++	echo CONFIG_MONGOOSESSL=y >> configs/debian_defconfig
++endif
+ ifeq (,$(filter pkg.swupdate.nosigning,$(DEB_BUILD_PROFILES)))
+ 	echo CONFIG_SIGNED_IMAGES=y >> configs/debian_defconfig
+ endif
+-- 
+2.30.2
+
diff --git a/recipes-core/swupdate/files/0007-debian-Make-CONFIG_HW_COMPATIBILTY-optional.patch b/recipes-core/swupdate/files/0007-debian-Make-CONFIG_HW_COMPATIBILTY-optional.patch
new file mode 100644
index 0000000..c2d37a9
--- /dev/null
+++ b/recipes-core/swupdate/files/0007-debian-Make-CONFIG_HW_COMPATIBILTY-optional.patch
@@ -0,0 +1,40 @@
+From 538e54a36b24eb6caf49d7dca91598fa9fc86713 Mon Sep 17 00:00:00 2001
+From: Quirin Gylstorff <quirin.gylstorff@siemens.com>
+Date: Tue, 5 Oct 2021 10:56:25 +0200
+Subject: [PATCH 7/9] debian: Make CONFIG_HW_COMPATIBILTY optional
+
+Add option for qemu.
+
+Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
+---
+ debian/configs/defconfig | 1 -
+ debian/rules             | 3 +++
+ 2 files changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/debian/configs/defconfig b/debian/configs/defconfig
+index 337fcce..6fc1137 100644
+--- a/debian/configs/defconfig
++++ b/debian/configs/defconfig
+@@ -1,5 +1,4 @@
+ CONFIG_SYSTEMD=y
+-CONFIG_HW_COMPATIBILITY=y
+ CONFIG_DOWNLOAD=y
+ CONFIG_DOWNLOAD_SSL=y
+ CONFIG_SIGALG_CMS=y
+diff --git a/debian/rules b/debian/rules
+index 4574b18..9a4b0d4 100755
+--- a/debian/rules
++++ b/debian/rules
+@@ -39,6 +39,9 @@ else ifneq (,$(filter pkg.swupdate.efibootguard,$(DEB_BUILD_PROFILES)))
+ else
+ 	echo CONFIG_BOOTLOADER_NONE=y                   >> configs/debian_defconfig
+ endif
++ifneq (,$(filter pkg.swupdate.hwcompatibility,$(DEB_BUILD_PROFILES)))
++	echo CONFIG_HW_COMPATIBILITY=y                   >> configs/debian_defconfig
++endif
+ ifeq (,$(filter pkg.swupdate.nowebserver,$(DEB_BUILD_PROFILES)))
+ 	echo CONFIG_WEBSERVER=y   >> configs/debian_defconfig
+ 	echo CONFIG_MONGOOSESSL=y >> configs/debian_defconfig
+-- 
+2.30.2
+
diff --git a/recipes-core/swupdate/files/0008-debian-rules-Add-Embedded-Lua-handler-option.patch b/recipes-core/swupdate/files/0008-debian-rules-Add-Embedded-Lua-handler-option.patch
new file mode 100644
index 0000000..44a83c4
--- /dev/null
+++ b/recipes-core/swupdate/files/0008-debian-rules-Add-Embedded-Lua-handler-option.patch
@@ -0,0 +1,30 @@
+From c2f07b552c6d83562fed5452bc778ae0e5e19cd4 Mon Sep 17 00:00:00 2001
+From: Quirin Gylstorff <quirin.gylstorff@siemens.com>
+Date: Wed, 29 Sep 2021 11:32:41 +0200
+Subject: [PATCH 8/9] debian/rules: Add Embedded Lua handler option
+
+Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
+---
+ debian/rules | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/debian/rules b/debian/rules
+index 9a4b0d4..a1f73fd 100755
+--- a/debian/rules
++++ b/debian/rules
+@@ -66,7 +66,12 @@ ifneq (,$(LUA_VERSION))
+ 	echo CONFIG_LUAPKG=\"lua$(LUA_VERSION)\" >> configs/debian_defconfig
+ 	echo CONFIG_LUASCRIPTHANDLER=y           >> configs/debian_defconfig
+ 	echo CONFIG_HANDLER_IN_LUA=y             >> configs/debian_defconfig
++ifneq (,$(filter pkg.swupdate.embeddedlua,$(DEB_BUILD_PROFILES)))
++	echo CONFIG_EMBEDDED_LUA_HANDLER=y                              >> configs/debian_defconfig
++	echo CONFIG_EMBEDDED_LUA_HANDLER_SOURCE=\"/usr/share/lua/$(LUA_VERSION)/swupdate_handlers.lua\" >> configs/debian_defconfig
+ endif
++endif
++
+ 	echo CONFIG_EXTRA_CFLAGS=\"$(CFLAGS) $(CPPFLAGS)\" >> configs/debian_defconfig
+ 	echo CONFIG_EXTRA_LDFLAGS=\"$(LDFLAGS)\"           >> configs/debian_defconfig
+ 	echo CONFIG_EXTRA_LDLIBS=\"$(LDLIBS)\"             >> configs/debian_defconfig
+-- 
+2.30.2
+
diff --git a/recipes-core/swupdate/files/0009-debian-prepare-build-for-isar-debian-buster.patch b/recipes-core/swupdate/files/0009-debian-prepare-build-for-isar-debian-buster.patch
new file mode 100644
index 0000000..8462951
--- /dev/null
+++ b/recipes-core/swupdate/files/0009-debian-prepare-build-for-isar-debian-buster.patch
@@ -0,0 +1,72 @@
+From 16dd48c2282aba91f8fc1f458f7b0c06504cac19 Mon Sep 17 00:00:00 2001
+From: Quirin Gylstorff <quirin.gylstorff@siemens.com>
+Date: Wed, 29 Sep 2021 16:17:03 +0200
+Subject: [PATCH 9/9] debian: prepare build for isar debian buster
+
+Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
+---
+ debian/compat  |  1 +
+ debian/control | 10 +++++-----
+ debian/rules   |  4 +++-
+ 3 files changed, 9 insertions(+), 6 deletions(-)
+ create mode 100644 debian/compat
+
+diff --git a/debian/compat b/debian/compat
+new file mode 100644
+index 0000000..f599e28
+--- /dev/null
++++ b/debian/compat
+@@ -0,0 +1 @@
++10
+diff --git a/debian/control b/debian/control
+index 6031537..710cb2d 100644
+--- a/debian/control
++++ b/debian/control
+@@ -4,7 +4,7 @@ Priority: optional
+ Maintainer: Stefano Babic <sbabic@denx.de>
+ Uploaders: SZ Lin (林上智) <szlin@debian.org>,
+            Nobuhiro Iwamatsu <iwamatsu@debian.org>
+-Build-Depends: debhelper-compat (= 13),
++Build-Depends: debhelper,
+                dh-lua:native <!nolua>,
+                liblua5.2-dev <!nolua>,
+                libfdisk-dev,
+@@ -23,10 +23,10 @@ Build-Depends: debhelper-compat (= 13),
+                libzstd-dev,
+                libp11-kit-dev <pkg.swupdate.p11>,
+                libwolfssl-dev <pkg.swupdate.p11>,
+-               libmtd-dev <!pkg.swupdate.bpo>,
+-               libubi-dev <!pkg.swupdate.bpo>,
+-               libwebsockets-dev (>= 3.2.0) <!pkg.swupdate.bpo>,
+-               liburiparser-dev <!pkg.swupdate.bpo>,
++               libmtd-dev <pkg.swupdate.mtd> <pkg.swupdate.ubi>,
++               libubi-dev <pkg.swupdate.ubi>,
++               libwebsockets-dev,
++               liburiparser-dev,
+                libubootenv-dev <pkg.swupdate.uboot>,
+                efibootguard-dev <pkg.swupdate.efibootguard>,
+                libcmocka-dev,
+diff --git a/debian/rules b/debian/rules
+index a1f73fd..a2ae1ac 100755
+--- a/debian/rules
++++ b/debian/rules
+@@ -19,13 +19,15 @@ endif
+ 
+ override_dh_auto_configure:
+ 	cp debian/configs/defconfig  configs/debian_defconfig
+-ifeq (,$(filter pkg.swupdate.bpo,$(DEB_BUILD_PROFILES)))
++ifneq (,$(filter pkg.swupdate.mtd,$(DEB_BUILD_PROFILES)))
+ 	echo CONFIG_MTD=y                  >> configs/debian_defconfig
++ifneq (,$(filter pkg.swupdate.ubi,$(DEB_BUILD_PROFILES)))
+ 	echo CONFIG_SWUFORWARDER_HANDLER=y >> configs/debian_defconfig
+ 	echo CONFIG_CFI=y                  >> configs/debian_defconfig
+ 	echo CONFIG_CFIHAMMING1=y          >> configs/debian_defconfig
+ 	echo CONFIG_UBIVOL=y               >> configs/debian_defconfig
+ 	echo CONFIG_SSBLSWITCH=y           >> configs/debian_defconfig
++endif
+ else
+ 	echo "# CONFIG_MTD is not set"     >> configs/debian_defconfig
+ endif
+-- 
+2.30.2
+
diff --git a/recipes-core/swupdate/swupdate.inc b/recipes-core/swupdate/swupdate.inc
new file mode 100644
index 0000000..a7fd662
--- /dev/null
+++ b/recipes-core/swupdate/swupdate.inc
@@ -0,0 +1,54 @@
+#
+# CIP Core, generic profile
+#
+# Copyright (c) Siemens AG, 2021
+#
+# Authors:
+#  Quirin Gylstorff <quirin.gylstorff@siemens.com>
+#
+# SPDX-License-Identifier: MIT
+
+DESCRIPTION = "swupdate utility for software updates"
+HOMEPAGE= "https://github.com/sbabic/swupdate"
+LICENSE = "GPL-2.0"
+LIC_FILES_CHKSUM = "file://${LAYERDIR_isar}/licenses/COPYING.GPLv2;md5=751419260aa954499f7abaabaa882bbe"
+
+
+def get_bootloader_build_profile(d):
+    bootloader = d.getVar("SWUPDATE_BOOTLOADER", True) or ""
+    if bootloader == "efibootguard":
+        return "pkg.swupdate.efibootguard"
+    if bootloader == "u-boot":
+        return "pkg.swupdate.uboot"
+    return ""
+
+SWUPDATE_BUILD_PROFILES += "${@get_bootloader_build_profile(d)}"
+
+def get_bootloader_dependencies(d):
+    bootloader = d.getVar("SWUPDATE_BOOTLOADER", True) or ""
+    if bootloader == "efibootguard":
+        return "efibootguard-dev"
+    if bootloader == "u-boot":
+        if d.getVar("U_BOOT_CONFIG_PACKAGE", True) == "1":
+            return "libubootenv u-boot-{}-config".format(d.getVar("MACHINE", TRUE))
+        else:
+            return "libubootenv"
+    return ""
+
+DEPENDS += "${@get_bootloader_dependencies(d)}"
+DEPENDS += "${@bb.utils.contains('SWUPDATE_BUILD_PROFILES', 'mtd', 'mtd-utils', '', d)}"
+
+do_install_builddeps_prepend() {
+    export DEB_BUILD_PROFILES="${SWUPDATE_BUILD_PROFILES}"
+}
+
+dpkg_runbuild_prepend() {
+    export DEB_BUILD_PROFILES="${SWUPDATE_BUILD_PROFILES}"
+}
+
+python do_check_bootloader () {
+    bootloader = d.getVar("SWUPDATE_BOOTLOADER", True) or "None"
+    if not bootloader in ["efibootguard", "u-boot"]:
+        bb.warn("swupdate: SWUPDATE_BOOTLOADER set to incompatible value: " + bootloader)
+}
+addtask check_bootloader before do_fetch
diff --git a/recipes-core/swupdate/swupdate_2021.04-1+debian-gbp.bb b/recipes-core/swupdate/swupdate_2021.04-1+debian-gbp.bb
new file mode 100644
index 0000000..3b8da36
--- /dev/null
+++ b/recipes-core/swupdate/swupdate_2021.04-1+debian-gbp.bb
@@ -0,0 +1,47 @@
+#
+# CIP Core, generic profile
+#
+# Copyright (c) Siemens AG, 2021
+#
+# Authors:
+#  Quirin Gylstorff <quirin.gylstorff@siemens.com>
+#
+# SPDX-License-Identifier: MIT
+
+inherit dpkg-gbp
+
+include swupdate.inc
+
+SRC_URI = "git://salsa.debian.org/debian/swupdate.git;protocol=https;branch=debian/master"
+SRCREV ="debian/2021.04-1"
+
+# add options to DEB_BUILD_PROFILES
+SRC_URI += "file://0001-debian-Add-option-to-build-with-efibootguard.patch \
+file://0002-debian-rules-Add-CONFIG_MTD.patch \
+file://0003-debian-config-Make-signing-optional.patch \
+file://0004-debian-config-Make-image-encryption-optional.patch \
+file://0005-debian-rules-Add-option-to-disable-fs-creation.patch \
+file://0006-debian-rules-Add-option-to-disable-webserver.patch \
+file://0007-debian-Make-CONFIG_HW_COMPATIBILTY-optional.patch \
+file://0008-debian-rules-Add-Embedded-Lua-handler-option.patch"
+
+# deactivate signing and encryption for simple a/b rootfs update
+SWUPDATE_BUILD_PROFILES += "pkg.swupdate.nosigning pkg.swupdate.noencryption"
+
+# If the luahandler shall be embedded into the swupdate binary
+# include the following lines.
+# DEPENDS += "swupdate-handlers"
+# GBP_DEPENDS += "swupdate-handlers"
+# SWUPDATE_BUILD_PROFILES += "pkg.swupdate.embeddedlua"
+
+# modify for debian buster build
+SRC_URI_append_cip-core-buster = " file://0009-debian-prepare-build-for-isar-debian-buster.patch"
+
+# disable documentation due to missing packages in debian buster
+# disable create filesystem due to missing symbols in debian buster
+# disable webserver due to missing symbols in debian buster
+SWUPDATE_BUILD_PROFILES_append_cip-core-buster = " nodoc \
+                                                   pkg.swupdate.nocreatefs \
+                                                   pkg.swupdate.nowebserver "
+# set compression to xz
+GBP_EXTRA_OPTIONS += "--git-compression=xz"
-- 
2.30.2



^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [cip-dev][isar-cip-core][PATCH 2/4] swupdate: Use dpkg-gbp build with salsa
@ 2021-10-05 14:13   ` Quirin Gylstorff
  0 siblings, 0 replies; 13+ messages in thread
From: Quirin Gylstorff @ 2021-10-05 14:13 UTC (permalink / raw)
  To: jan.kiszka, cip-dev

[-- Attachment #1: Type: text/plain, Size: 26263 bytes --]

From: Quirin Gylstorff <quirin.gylstorff@siemens.com>

This reduce the maintaince effort for SWUpdate in Debian 11(Bullseye)
and later.

Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
---
 conf/distro/cip-core-bullseye.conf            |  1 +
 conf/distro/cip-core-buster.conf              |  1 +
 ...dd-option-to-build-with-efibootguard.patch | 39 ++++++++++
 .../0002-debian-rules-Add-CONFIG_MTD.patch    | 27 +++++++
 ...-debian-config-Make-signing-optional.patch | 40 +++++++++++
 ...onfig-Make-image-encryption-optional.patch | 40 +++++++++++
 ...ules-Add-Embedded-Lua-handler-option.patch | 30 ++++++++
 ...es-Add-option-to-disable-fs-creation.patch | 47 ++++++++++++
 ...ules-Add-option-to-disable-webserver.patch | 42 +++++++++++
 ...Make-CONFIG_HW_COMPATIBILTY-optional.patch | 40 +++++++++++
 ...ules-Add-Embedded-Lua-handler-option.patch | 30 ++++++++
 ...prepare-build-for-isar-debian-buster.patch | 72 +++++++++++++++++++
 recipes-core/swupdate/swupdate.inc            | 54 ++++++++++++++
 .../swupdate/swupdate_2021.04-1+debian-gbp.bb | 47 ++++++++++++
 14 files changed, 510 insertions(+)
 create mode 100644 recipes-core/swupdate/files/0001-debian-Add-option-to-build-with-efibootguard.patch
 create mode 100644 recipes-core/swupdate/files/0002-debian-rules-Add-CONFIG_MTD.patch
 create mode 100644 recipes-core/swupdate/files/0003-debian-config-Make-signing-optional.patch
 create mode 100644 recipes-core/swupdate/files/0004-debian-config-Make-image-encryption-optional.patch
 create mode 100644 recipes-core/swupdate/files/0005-debian-rules-Add-Embedded-Lua-handler-option.patch
 create mode 100644 recipes-core/swupdate/files/0005-debian-rules-Add-option-to-disable-fs-creation.patch
 create mode 100644 recipes-core/swupdate/files/0006-debian-rules-Add-option-to-disable-webserver.patch
 create mode 100644 recipes-core/swupdate/files/0007-debian-Make-CONFIG_HW_COMPATIBILTY-optional.patch
 create mode 100644 recipes-core/swupdate/files/0008-debian-rules-Add-Embedded-Lua-handler-option.patch
 create mode 100644 recipes-core/swupdate/files/0009-debian-prepare-build-for-isar-debian-buster.patch
 create mode 100644 recipes-core/swupdate/swupdate.inc
 create mode 100644 recipes-core/swupdate/swupdate_2021.04-1+debian-gbp.bb

diff --git a/conf/distro/cip-core-bullseye.conf b/conf/distro/cip-core-bullseye.conf
index 38014b4..9357b6c 100644
--- a/conf/distro/cip-core-bullseye.conf
+++ b/conf/distro/cip-core-bullseye.conf
@@ -14,3 +14,4 @@ require cip-core-common.inc
 
 PREFERRED_VERSION_linux-cip ?= "4.19.%"
 PREFERRED_VERSION_linux-cip-rt ?= "4.19.%"
+PREFERRED_VERSION_swupdate ?= "2021.04-1+debian-gbp"
diff --git a/conf/distro/cip-core-buster.conf b/conf/distro/cip-core-buster.conf
index c5cb39c..61fcb41 100644
--- a/conf/distro/cip-core-buster.conf
+++ b/conf/distro/cip-core-buster.conf
@@ -14,3 +14,4 @@ require cip-core-common.inc
 
 PREFERRED_VERSION_linux-cip ?= "4.19.%"
 PREFERRED_VERSION_linux-cip-rt ?= "4.19.%"
+PREFERRED_VERSION_swupdate ?= "2021.4-git+isar"
diff --git a/recipes-core/swupdate/files/0001-debian-Add-option-to-build-with-efibootguard.patch b/recipes-core/swupdate/files/0001-debian-Add-option-to-build-with-efibootguard.patch
new file mode 100644
index 0000000..00f9a5f
--- /dev/null
+++ b/recipes-core/swupdate/files/0001-debian-Add-option-to-build-with-efibootguard.patch
@@ -0,0 +1,39 @@
+From fe3f090e3764e1e2625d509a56bd521bab507ce7 Mon Sep 17 00:00:00 2001
+From: Quirin Gylstorff <quirin.gylstorff@siemens.com>
+Date: Wed, 15 Sep 2021 12:36:09 +0200
+Subject: [PATCH 1/9] debian: Add option to build with efibootguard
+
+Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
+---
+ debian/control | 1 +
+ debian/rules   | 2 ++
+ 2 files changed, 3 insertions(+)
+
+diff --git a/debian/control b/debian/control
+index 9e43eab..6031537 100644
+--- a/debian/control
++++ b/debian/control
+@@ -28,6 +28,7 @@ Build-Depends: debhelper-compat (= 13),
+                libwebsockets-dev (>= 3.2.0) <!pkg.swupdate.bpo>,
+                liburiparser-dev <!pkg.swupdate.bpo>,
+                libubootenv-dev <pkg.swupdate.uboot>,
++               efibootguard-dev <pkg.swupdate.efibootguard>,
+                libcmocka-dev,
+                pkg-config,
+                gawk,
+diff --git a/debian/rules b/debian/rules
+index 4b55be2..c076839 100755
+--- a/debian/rules
++++ b/debian/rules
+@@ -33,6 +33,8 @@ ifneq (,$(filter pkg.swupdate.uboot,$(DEB_BUILD_PROFILES)))
+ else ifneq (,$(filter pkg.swupdate.grub,$(DEB_BUILD_PROFILES)))
+ 	echo CONFIG_BOOTLOADER_GRUB=y                   >> configs/debian_defconfig
+ 	echo CONFIG_GRUBENV_PATH=\"/boot/grub/grubenv\" >> configs/debian_defconfig
++else ifneq (,$(filter pkg.swupdate.efibootguard,$(DEB_BUILD_PROFILES)))
++	echo CONFIG_BOOTLOADER_EBG=y                    >> configs/debian_defconfig
+ else
+ 	echo CONFIG_BOOTLOADER_NONE=y                   >> configs/debian_defconfig
+ endif
+-- 
+2.30.2
+
diff --git a/recipes-core/swupdate/files/0002-debian-rules-Add-CONFIG_MTD.patch b/recipes-core/swupdate/files/0002-debian-rules-Add-CONFIG_MTD.patch
new file mode 100644
index 0000000..0921aef
--- /dev/null
+++ b/recipes-core/swupdate/files/0002-debian-rules-Add-CONFIG_MTD.patch
@@ -0,0 +1,27 @@
+From 43365f98d70d83dac42913ff907a8a9dd25a4333 Mon Sep 17 00:00:00 2001
+From: Quirin Gylstorff <quirin.gylstorff@siemens.com>
+Date: Wed, 29 Sep 2021 11:29:57 +0200
+Subject: [PATCH 2/9] debian/rules: Add CONFIG_MTD
+
+if pkg.swupdate.bpo is set CONFIG_MTD is disable but not enabled.
+
+Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
+---
+ debian/rules | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/debian/rules b/debian/rules
+index c076839..292133b 100755
+--- a/debian/rules
++++ b/debian/rules
+@@ -20,6 +20,7 @@ endif
+ override_dh_auto_configure:
+ 	cp debian/configs/defconfig  configs/debian_defconfig
+ ifeq (,$(filter pkg.swupdate.bpo,$(DEB_BUILD_PROFILES)))
++	echo CONFIG_MTD=y                  >> configs/debian_defconfig
+ 	echo CONFIG_SWUFORWARDER_HANDLER=y >> configs/debian_defconfig
+ 	echo CONFIG_CFI=y                  >> configs/debian_defconfig
+ 	echo CONFIG_CFIHAMMING1=y          >> configs/debian_defconfig
+-- 
+2.30.2
+
diff --git a/recipes-core/swupdate/files/0003-debian-config-Make-signing-optional.patch b/recipes-core/swupdate/files/0003-debian-config-Make-signing-optional.patch
new file mode 100644
index 0000000..347b316
--- /dev/null
+++ b/recipes-core/swupdate/files/0003-debian-config-Make-signing-optional.patch
@@ -0,0 +1,40 @@
+From 37f9afeeac5483f677b5be41b3d31e6557fcc146 Mon Sep 17 00:00:00 2001
+From: Quirin Gylstorff <quirin.gylstorff@siemens.com>
+Date: Wed, 29 Sep 2021 15:27:51 +0200
+Subject: [PATCH 3/9] debian/config: Make signing optional
+
+Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
+---
+ debian/configs/defconfig | 1 -
+ debian/rules             | 3 +++
+ 2 files changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/debian/configs/defconfig b/debian/configs/defconfig
+index b38aa62..f959e44 100644
+--- a/debian/configs/defconfig
++++ b/debian/configs/defconfig
+@@ -2,7 +2,6 @@ CONFIG_SYSTEMD=y
+ CONFIG_HW_COMPATIBILITY=y
+ CONFIG_DOWNLOAD=y
+ CONFIG_DOWNLOAD_SSL=y
+-CONFIG_SIGNED_IMAGES=y
+ CONFIG_SIGALG_CMS=y
+ CONFIG_ENCRYPTED_IMAGES=y
+ CONFIG_SURICATTA=y
+diff --git a/debian/rules b/debian/rules
+index 292133b..4793c84 100755
+--- a/debian/rules
++++ b/debian/rules
+@@ -39,6 +39,9 @@ else ifneq (,$(filter pkg.swupdate.efibootguard,$(DEB_BUILD_PROFILES)))
+ else
+ 	echo CONFIG_BOOTLOADER_NONE=y                   >> configs/debian_defconfig
+ endif
++ifeq (,$(filter pkg.swupdate.nosigning,$(DEB_BUILD_PROFILES)))
++	echo CONFIG_SIGNED_IMAGES=y >> configs/debian_defconfig
++endif
+ ifneq (,$(filter pkg.swupdate.p11,$(DEB_BUILD_PROFILES)))
+ 	echo CONFIG_PKCS11=y >> configs/debian_defconfig
+ endif
+-- 
+2.30.2
+
diff --git a/recipes-core/swupdate/files/0004-debian-config-Make-image-encryption-optional.patch b/recipes-core/swupdate/files/0004-debian-config-Make-image-encryption-optional.patch
new file mode 100644
index 0000000..45990f8
--- /dev/null
+++ b/recipes-core/swupdate/files/0004-debian-config-Make-image-encryption-optional.patch
@@ -0,0 +1,40 @@
+From b0cfcc9980c6daf6383c6dc51fdbe90e1c7625d5 Mon Sep 17 00:00:00 2001
+From: Quirin Gylstorff <quirin.gylstorff@siemens.com>
+Date: Wed, 29 Sep 2021 15:28:21 +0200
+Subject: [PATCH 4/9] debian/config: Make image encryption optional
+
+Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
+---
+ debian/configs/defconfig | 1 -
+ debian/rules             | 3 +++
+ 2 files changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/debian/configs/defconfig b/debian/configs/defconfig
+index f959e44..8e1a810 100644
+--- a/debian/configs/defconfig
++++ b/debian/configs/defconfig
+@@ -3,7 +3,6 @@ CONFIG_HW_COMPATIBILITY=y
+ CONFIG_DOWNLOAD=y
+ CONFIG_DOWNLOAD_SSL=y
+ CONFIG_SIGALG_CMS=y
+-CONFIG_ENCRYPTED_IMAGES=y
+ CONFIG_SURICATTA=y
+ CONFIG_SURICATTA_SSL=y
+ CONFIG_UPDATE_STATE_CHOICE_BOOTLOADER=y
+diff --git a/debian/rules b/debian/rules
+index 4793c84..6d32d50 100755
+--- a/debian/rules
++++ b/debian/rules
+@@ -42,6 +42,9 @@ endif
+ ifeq (,$(filter pkg.swupdate.nosigning,$(DEB_BUILD_PROFILES)))
+ 	echo CONFIG_SIGNED_IMAGES=y >> configs/debian_defconfig
+ endif
++ifeq (,$(filter pkg.swupdate.noencryption,$(DEB_BUILD_PROFILES)))
++	echo CONFIG_ENCRYPTED_IMAGES=y >> configs/debian_defconfig
++endif
+ ifneq (,$(filter pkg.swupdate.p11,$(DEB_BUILD_PROFILES)))
+ 	echo CONFIG_PKCS11=y >> configs/debian_defconfig
+ endif
+-- 
+2.30.2
+
diff --git a/recipes-core/swupdate/files/0005-debian-rules-Add-Embedded-Lua-handler-option.patch b/recipes-core/swupdate/files/0005-debian-rules-Add-Embedded-Lua-handler-option.patch
new file mode 100644
index 0000000..84665cd
--- /dev/null
+++ b/recipes-core/swupdate/files/0005-debian-rules-Add-Embedded-Lua-handler-option.patch
@@ -0,0 +1,30 @@
+From 0200687ad67d6e5a0e9bbdf2e8c86e3f8e717c5e Mon Sep 17 00:00:00 2001
+From: Quirin Gylstorff <quirin.gylstorff@siemens.com>
+Date: Wed, 29 Sep 2021 11:32:41 +0200
+Subject: [PATCH 5/6] debian/rules: Add Embedded Lua handler option
+
+Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
+---
+ debian/rules | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/debian/rules b/debian/rules
+index 69fd790..9ace348 100755
+--- a/debian/rules
++++ b/debian/rules
+@@ -52,7 +52,12 @@ ifneq (,$(LUA_VERSION))
+ 	echo CONFIG_LUAPKG=\"lua$(LUA_VERSION)\" >> configs/debian_defconfig
+ 	echo CONFIG_LUASCRIPTHANDLER=y           >> configs/debian_defconfig
+ 	echo CONFIG_HANDLER_IN_LUA=y             >> configs/debian_defconfig
++ifneq (,$(filter pkg.swupdate.embeddedlua,$(DEB_BUILD_PROFILES)))
++	echo CONFIG_EMBEDDED_LUA_HANDLER=y                              >> configs/debian_defconfig
++	echo CONFIG_EMBEDDED_LUA_HANDLER_SOURCE=\"/usr/share/lua/$(LUA_VERSION)/swupdate_handlers.lua\" >> configs/debian_defconfig
+ endif
++endif
++
+ 	echo CONFIG_EXTRA_CFLAGS=\"$(CFLAGS) $(CPPFLAGS)\" >> configs/debian_defconfig
+ 	echo CONFIG_EXTRA_LDFLAGS=\"$(LDFLAGS)\"           >> configs/debian_defconfig
+ 	echo CONFIG_EXTRA_LDLIBS=\"$(LDLIBS)\"             >> configs/debian_defconfig
+-- 
+2.30.2
+
diff --git a/recipes-core/swupdate/files/0005-debian-rules-Add-option-to-disable-fs-creation.patch b/recipes-core/swupdate/files/0005-debian-rules-Add-option-to-disable-fs-creation.patch
new file mode 100644
index 0000000..1121923
--- /dev/null
+++ b/recipes-core/swupdate/files/0005-debian-rules-Add-option-to-disable-fs-creation.patch
@@ -0,0 +1,47 @@
+From 22a96e95676123c6ce8800b9d911402704dce9e2 Mon Sep 17 00:00:00 2001
+From: Quirin Gylstorff <quirin.gylstorff@siemens.com>
+Date: Mon, 4 Oct 2021 17:15:56 +0200
+Subject: [PATCH 5/9] debian/rules: Add option to disable fs creation
+
+Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
+---
+ debian/configs/defconfig | 4 ----
+ debian/rules             | 7 +++++++
+ 2 files changed, 7 insertions(+), 4 deletions(-)
+
+diff --git a/debian/configs/defconfig b/debian/configs/defconfig
+index 8e1a810..d011deb 100644
+--- a/debian/configs/defconfig
++++ b/debian/configs/defconfig
+@@ -9,10 +9,6 @@ CONFIG_UPDATE_STATE_CHOICE_BOOTLOADER=y
+ CONFIG_WEBSERVER=y
+ CONFIG_MONGOOSESSL=y
+ CONFIG_ZSTD=y
+-CONFIG_DISKPART=y
+-CONFIG_DISKFORMAT=y
+-CONFIG_FAT_FILESYSTEM=y
+-CONFIG_EXT_FILESYSTEM=y
+ CONFIG_UNIQUEUUID=y
+ CONFIG_RAW=y
+ CONFIG_RDIFFHANDLER=y
+diff --git a/debian/rules b/debian/rules
+index 6d32d50..9349c22 100755
+--- a/debian/rules
++++ b/debian/rules
+@@ -45,6 +45,13 @@ endif
+ ifeq (,$(filter pkg.swupdate.noencryption,$(DEB_BUILD_PROFILES)))
+ 	echo CONFIG_ENCRYPTED_IMAGES=y >> configs/debian_defconfig
+ endif
++ifeq (,$(filter pkg.swupdate.nocreatefs,$(DEB_BUILD_PROFILES)))
++	echo CONFIG_DISKPART=y       >> configs/debian_defconfig
++	echo CONFIG_DISKFORMAT=y     >> configs/debian_defconfig
++	echo CONFIG_FAT_FILESYSTEM=y >> configs/debian_defconfig
++	echo CONFIG_EXT_FILESYSTEM=y >> configs/debian_defconfig
++endif
++
+ ifneq (,$(filter pkg.swupdate.p11,$(DEB_BUILD_PROFILES)))
+ 	echo CONFIG_PKCS11=y >> configs/debian_defconfig
+ endif
+-- 
+2.30.2
+
diff --git a/recipes-core/swupdate/files/0006-debian-rules-Add-option-to-disable-webserver.patch b/recipes-core/swupdate/files/0006-debian-rules-Add-option-to-disable-webserver.patch
new file mode 100644
index 0000000..23a456d
--- /dev/null
+++ b/recipes-core/swupdate/files/0006-debian-rules-Add-option-to-disable-webserver.patch
@@ -0,0 +1,42 @@
+From 9caabe416aca7ca2bf1cd2d8be89cfc89cedf6cd Mon Sep 17 00:00:00 2001
+From: Quirin Gylstorff <quirin.gylstorff@siemens.com>
+Date: Mon, 4 Oct 2021 17:27:11 +0200
+Subject: [PATCH 6/9] debian/rules: Add option to disable webserver
+
+Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
+---
+ debian/configs/defconfig | 2 --
+ debian/rules             | 4 ++++
+ 2 files changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/debian/configs/defconfig b/debian/configs/defconfig
+index d011deb..337fcce 100644
+--- a/debian/configs/defconfig
++++ b/debian/configs/defconfig
+@@ -6,8 +6,6 @@ CONFIG_SIGALG_CMS=y
+ CONFIG_SURICATTA=y
+ CONFIG_SURICATTA_SSL=y
+ CONFIG_UPDATE_STATE_CHOICE_BOOTLOADER=y
+-CONFIG_WEBSERVER=y
+-CONFIG_MONGOOSESSL=y
+ CONFIG_ZSTD=y
+ CONFIG_UNIQUEUUID=y
+ CONFIG_RAW=y
+diff --git a/debian/rules b/debian/rules
+index 9349c22..4574b18 100755
+--- a/debian/rules
++++ b/debian/rules
+@@ -39,6 +39,10 @@ else ifneq (,$(filter pkg.swupdate.efibootguard,$(DEB_BUILD_PROFILES)))
+ else
+ 	echo CONFIG_BOOTLOADER_NONE=y                   >> configs/debian_defconfig
+ endif
++ifeq (,$(filter pkg.swupdate.nowebserver,$(DEB_BUILD_PROFILES)))
++	echo CONFIG_WEBSERVER=y   >> configs/debian_defconfig
++	echo CONFIG_MONGOOSESSL=y >> configs/debian_defconfig
++endif
+ ifeq (,$(filter pkg.swupdate.nosigning,$(DEB_BUILD_PROFILES)))
+ 	echo CONFIG_SIGNED_IMAGES=y >> configs/debian_defconfig
+ endif
+-- 
+2.30.2
+
diff --git a/recipes-core/swupdate/files/0007-debian-Make-CONFIG_HW_COMPATIBILTY-optional.patch b/recipes-core/swupdate/files/0007-debian-Make-CONFIG_HW_COMPATIBILTY-optional.patch
new file mode 100644
index 0000000..c2d37a9
--- /dev/null
+++ b/recipes-core/swupdate/files/0007-debian-Make-CONFIG_HW_COMPATIBILTY-optional.patch
@@ -0,0 +1,40 @@
+From 538e54a36b24eb6caf49d7dca91598fa9fc86713 Mon Sep 17 00:00:00 2001
+From: Quirin Gylstorff <quirin.gylstorff@siemens.com>
+Date: Tue, 5 Oct 2021 10:56:25 +0200
+Subject: [PATCH 7/9] debian: Make CONFIG_HW_COMPATIBILTY optional
+
+Add option for qemu.
+
+Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
+---
+ debian/configs/defconfig | 1 -
+ debian/rules             | 3 +++
+ 2 files changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/debian/configs/defconfig b/debian/configs/defconfig
+index 337fcce..6fc1137 100644
+--- a/debian/configs/defconfig
++++ b/debian/configs/defconfig
+@@ -1,5 +1,4 @@
+ CONFIG_SYSTEMD=y
+-CONFIG_HW_COMPATIBILITY=y
+ CONFIG_DOWNLOAD=y
+ CONFIG_DOWNLOAD_SSL=y
+ CONFIG_SIGALG_CMS=y
+diff --git a/debian/rules b/debian/rules
+index 4574b18..9a4b0d4 100755
+--- a/debian/rules
++++ b/debian/rules
+@@ -39,6 +39,9 @@ else ifneq (,$(filter pkg.swupdate.efibootguard,$(DEB_BUILD_PROFILES)))
+ else
+ 	echo CONFIG_BOOTLOADER_NONE=y                   >> configs/debian_defconfig
+ endif
++ifneq (,$(filter pkg.swupdate.hwcompatibility,$(DEB_BUILD_PROFILES)))
++	echo CONFIG_HW_COMPATIBILITY=y                   >> configs/debian_defconfig
++endif
+ ifeq (,$(filter pkg.swupdate.nowebserver,$(DEB_BUILD_PROFILES)))
+ 	echo CONFIG_WEBSERVER=y   >> configs/debian_defconfig
+ 	echo CONFIG_MONGOOSESSL=y >> configs/debian_defconfig
+-- 
+2.30.2
+
diff --git a/recipes-core/swupdate/files/0008-debian-rules-Add-Embedded-Lua-handler-option.patch b/recipes-core/swupdate/files/0008-debian-rules-Add-Embedded-Lua-handler-option.patch
new file mode 100644
index 0000000..44a83c4
--- /dev/null
+++ b/recipes-core/swupdate/files/0008-debian-rules-Add-Embedded-Lua-handler-option.patch
@@ -0,0 +1,30 @@
+From c2f07b552c6d83562fed5452bc778ae0e5e19cd4 Mon Sep 17 00:00:00 2001
+From: Quirin Gylstorff <quirin.gylstorff@siemens.com>
+Date: Wed, 29 Sep 2021 11:32:41 +0200
+Subject: [PATCH 8/9] debian/rules: Add Embedded Lua handler option
+
+Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
+---
+ debian/rules | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/debian/rules b/debian/rules
+index 9a4b0d4..a1f73fd 100755
+--- a/debian/rules
++++ b/debian/rules
+@@ -66,7 +66,12 @@ ifneq (,$(LUA_VERSION))
+ 	echo CONFIG_LUAPKG=\"lua$(LUA_VERSION)\" >> configs/debian_defconfig
+ 	echo CONFIG_LUASCRIPTHANDLER=y           >> configs/debian_defconfig
+ 	echo CONFIG_HANDLER_IN_LUA=y             >> configs/debian_defconfig
++ifneq (,$(filter pkg.swupdate.embeddedlua,$(DEB_BUILD_PROFILES)))
++	echo CONFIG_EMBEDDED_LUA_HANDLER=y                              >> configs/debian_defconfig
++	echo CONFIG_EMBEDDED_LUA_HANDLER_SOURCE=\"/usr/share/lua/$(LUA_VERSION)/swupdate_handlers.lua\" >> configs/debian_defconfig
+ endif
++endif
++
+ 	echo CONFIG_EXTRA_CFLAGS=\"$(CFLAGS) $(CPPFLAGS)\" >> configs/debian_defconfig
+ 	echo CONFIG_EXTRA_LDFLAGS=\"$(LDFLAGS)\"           >> configs/debian_defconfig
+ 	echo CONFIG_EXTRA_LDLIBS=\"$(LDLIBS)\"             >> configs/debian_defconfig
+-- 
+2.30.2
+
diff --git a/recipes-core/swupdate/files/0009-debian-prepare-build-for-isar-debian-buster.patch b/recipes-core/swupdate/files/0009-debian-prepare-build-for-isar-debian-buster.patch
new file mode 100644
index 0000000..8462951
--- /dev/null
+++ b/recipes-core/swupdate/files/0009-debian-prepare-build-for-isar-debian-buster.patch
@@ -0,0 +1,72 @@
+From 16dd48c2282aba91f8fc1f458f7b0c06504cac19 Mon Sep 17 00:00:00 2001
+From: Quirin Gylstorff <quirin.gylstorff@siemens.com>
+Date: Wed, 29 Sep 2021 16:17:03 +0200
+Subject: [PATCH 9/9] debian: prepare build for isar debian buster
+
+Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
+---
+ debian/compat  |  1 +
+ debian/control | 10 +++++-----
+ debian/rules   |  4 +++-
+ 3 files changed, 9 insertions(+), 6 deletions(-)
+ create mode 100644 debian/compat
+
+diff --git a/debian/compat b/debian/compat
+new file mode 100644
+index 0000000..f599e28
+--- /dev/null
++++ b/debian/compat
+@@ -0,0 +1 @@
++10
+diff --git a/debian/control b/debian/control
+index 6031537..710cb2d 100644
+--- a/debian/control
++++ b/debian/control
+@@ -4,7 +4,7 @@ Priority: optional
+ Maintainer: Stefano Babic <sbabic@denx.de>
+ Uploaders: SZ Lin (林上智) <szlin@debian.org>,
+            Nobuhiro Iwamatsu <iwamatsu@debian.org>
+-Build-Depends: debhelper-compat (= 13),
++Build-Depends: debhelper,
+                dh-lua:native <!nolua>,
+                liblua5.2-dev <!nolua>,
+                libfdisk-dev,
+@@ -23,10 +23,10 @@ Build-Depends: debhelper-compat (= 13),
+                libzstd-dev,
+                libp11-kit-dev <pkg.swupdate.p11>,
+                libwolfssl-dev <pkg.swupdate.p11>,
+-               libmtd-dev <!pkg.swupdate.bpo>,
+-               libubi-dev <!pkg.swupdate.bpo>,
+-               libwebsockets-dev (>= 3.2.0) <!pkg.swupdate.bpo>,
+-               liburiparser-dev <!pkg.swupdate.bpo>,
++               libmtd-dev <pkg.swupdate.mtd> <pkg.swupdate.ubi>,
++               libubi-dev <pkg.swupdate.ubi>,
++               libwebsockets-dev,
++               liburiparser-dev,
+                libubootenv-dev <pkg.swupdate.uboot>,
+                efibootguard-dev <pkg.swupdate.efibootguard>,
+                libcmocka-dev,
+diff --git a/debian/rules b/debian/rules
+index a1f73fd..a2ae1ac 100755
+--- a/debian/rules
++++ b/debian/rules
+@@ -19,13 +19,15 @@ endif
+ 
+ override_dh_auto_configure:
+ 	cp debian/configs/defconfig  configs/debian_defconfig
+-ifeq (,$(filter pkg.swupdate.bpo,$(DEB_BUILD_PROFILES)))
++ifneq (,$(filter pkg.swupdate.mtd,$(DEB_BUILD_PROFILES)))
+ 	echo CONFIG_MTD=y                  >> configs/debian_defconfig
++ifneq (,$(filter pkg.swupdate.ubi,$(DEB_BUILD_PROFILES)))
+ 	echo CONFIG_SWUFORWARDER_HANDLER=y >> configs/debian_defconfig
+ 	echo CONFIG_CFI=y                  >> configs/debian_defconfig
+ 	echo CONFIG_CFIHAMMING1=y          >> configs/debian_defconfig
+ 	echo CONFIG_UBIVOL=y               >> configs/debian_defconfig
+ 	echo CONFIG_SSBLSWITCH=y           >> configs/debian_defconfig
++endif
+ else
+ 	echo "# CONFIG_MTD is not set"     >> configs/debian_defconfig
+ endif
+-- 
+2.30.2
+
diff --git a/recipes-core/swupdate/swupdate.inc b/recipes-core/swupdate/swupdate.inc
new file mode 100644
index 0000000..a7fd662
--- /dev/null
+++ b/recipes-core/swupdate/swupdate.inc
@@ -0,0 +1,54 @@
+#
+# CIP Core, generic profile
+#
+# Copyright (c) Siemens AG, 2021
+#
+# Authors:
+#  Quirin Gylstorff <quirin.gylstorff@siemens.com>
+#
+# SPDX-License-Identifier: MIT
+
+DESCRIPTION = "swupdate utility for software updates"
+HOMEPAGE= "https://github.com/sbabic/swupdate"
+LICENSE = "GPL-2.0"
+LIC_FILES_CHKSUM = "file://${LAYERDIR_isar}/licenses/COPYING.GPLv2;md5=751419260aa954499f7abaabaa882bbe"
+
+
+def get_bootloader_build_profile(d):
+    bootloader = d.getVar("SWUPDATE_BOOTLOADER", True) or ""
+    if bootloader == "efibootguard":
+        return "pkg.swupdate.efibootguard"
+    if bootloader == "u-boot":
+        return "pkg.swupdate.uboot"
+    return ""
+
+SWUPDATE_BUILD_PROFILES += "${@get_bootloader_build_profile(d)}"
+
+def get_bootloader_dependencies(d):
+    bootloader = d.getVar("SWUPDATE_BOOTLOADER", True) or ""
+    if bootloader == "efibootguard":
+        return "efibootguard-dev"
+    if bootloader == "u-boot":
+        if d.getVar("U_BOOT_CONFIG_PACKAGE", True) == "1":
+            return "libubootenv u-boot-{}-config".format(d.getVar("MACHINE", TRUE))
+        else:
+            return "libubootenv"
+    return ""
+
+DEPENDS += "${@get_bootloader_dependencies(d)}"
+DEPENDS += "${@bb.utils.contains('SWUPDATE_BUILD_PROFILES', 'mtd', 'mtd-utils', '', d)}"
+
+do_install_builddeps_prepend() {
+    export DEB_BUILD_PROFILES="${SWUPDATE_BUILD_PROFILES}"
+}
+
+dpkg_runbuild_prepend() {
+    export DEB_BUILD_PROFILES="${SWUPDATE_BUILD_PROFILES}"
+}
+
+python do_check_bootloader () {
+    bootloader = d.getVar("SWUPDATE_BOOTLOADER", True) or "None"
+    if not bootloader in ["efibootguard", "u-boot"]:
+        bb.warn("swupdate: SWUPDATE_BOOTLOADER set to incompatible value: " + bootloader)
+}
+addtask check_bootloader before do_fetch
diff --git a/recipes-core/swupdate/swupdate_2021.04-1+debian-gbp.bb b/recipes-core/swupdate/swupdate_2021.04-1+debian-gbp.bb
new file mode 100644
index 0000000..3b8da36
--- /dev/null
+++ b/recipes-core/swupdate/swupdate_2021.04-1+debian-gbp.bb
@@ -0,0 +1,47 @@
+#
+# CIP Core, generic profile
+#
+# Copyright (c) Siemens AG, 2021
+#
+# Authors:
+#  Quirin Gylstorff <quirin.gylstorff@siemens.com>
+#
+# SPDX-License-Identifier: MIT
+
+inherit dpkg-gbp
+
+include swupdate.inc
+
+SRC_URI = "git://salsa.debian.org/debian/swupdate.git;protocol=https;branch=debian/master"
+SRCREV ="debian/2021.04-1"
+
+# add options to DEB_BUILD_PROFILES
+SRC_URI += "file://0001-debian-Add-option-to-build-with-efibootguard.patch \
+file://0002-debian-rules-Add-CONFIG_MTD.patch \
+file://0003-debian-config-Make-signing-optional.patch \
+file://0004-debian-config-Make-image-encryption-optional.patch \
+file://0005-debian-rules-Add-option-to-disable-fs-creation.patch \
+file://0006-debian-rules-Add-option-to-disable-webserver.patch \
+file://0007-debian-Make-CONFIG_HW_COMPATIBILTY-optional.patch \
+file://0008-debian-rules-Add-Embedded-Lua-handler-option.patch"
+
+# deactivate signing and encryption for simple a/b rootfs update
+SWUPDATE_BUILD_PROFILES += "pkg.swupdate.nosigning pkg.swupdate.noencryption"
+
+# If the luahandler shall be embedded into the swupdate binary
+# include the following lines.
+# DEPENDS += "swupdate-handlers"
+# GBP_DEPENDS += "swupdate-handlers"
+# SWUPDATE_BUILD_PROFILES += "pkg.swupdate.embeddedlua"
+
+# modify for debian buster build
+SRC_URI_append_cip-core-buster = " file://0009-debian-prepare-build-for-isar-debian-buster.patch"
+
+# disable documentation due to missing packages in debian buster
+# disable create filesystem due to missing symbols in debian buster
+# disable webserver due to missing symbols in debian buster
+SWUPDATE_BUILD_PROFILES_append_cip-core-buster = " nodoc \
+                                                   pkg.swupdate.nocreatefs \
+                                                   pkg.swupdate.nowebserver "
+# set compression to xz
+GBP_EXTRA_OPTIONS += "--git-compression=xz"
-- 
2.30.2


[-- Attachment #2: Type: text/plain, Size: 429 bytes --]


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#6789): https://lists.cip-project.org/g/cip-dev/message/6789
Mute This Topic: https://lists.cip-project.org/mt/86094388/4520388
Group Owner: cip-dev+owner@lists.cip-project.org
Unsubscribe: https://lists.cip-project.org/g/cip-dev/leave/10495289/4520388/727948398/xyzzy [cip-dev@archiver.kernel.org]
-=-=-=-=-=-=-=-=-=-=-=-


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [cip-dev][isar-cip-core][PATCH 3/4] swupdate-handler: Use same lua version as swupdate-debian-gbp
@ 2021-10-05 14:13   ` Quirin Gylstorff
  0 siblings, 0 replies; 13+ messages in thread
From: Q. Gylstorff @ 2021-10-05 14:13 UTC (permalink / raw)
  To: jan.kiszka, cip-dev

From: Quirin Gylstorff <quirin.gylstorff@siemens.com>

Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
---
 .../swupdate-handlers/swupdate-handlers_0.1.bb        | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/recipes-core/swupdate-handlers/swupdate-handlers_0.1.bb b/recipes-core/swupdate-handlers/swupdate-handlers_0.1.bb
index b6cb30d..b96a6af 100644
--- a/recipes-core/swupdate-handlers/swupdate-handlers_0.1.bb
+++ b/recipes-core/swupdate-handlers/swupdate-handlers_0.1.bb
@@ -10,26 +10,25 @@
 
 inherit dpkg-raw
 
-DEPENDS = "swupdate"
-DEBIAN_DEPENDS = "swupdate"
-
 SRC_URI += " ${@ 'git://gitlab.com/cip-project/cip-sw-updates/swupdate-handler-roundrobin.git;protocol=https;destsuffix=swupdate-handler-roundrobin;name=swupdate-handler-roundrobin;nobranch=1' \
     if d.getVar('SWUPDATE_USE_ROUND_ROBIN_HANDLER_REPO') == '1' else '' \
     }"
 SRCREV_swupdate-handler-roundrobin ?= "6f561f136fdbe51d2e9066b934dfcb06b94c6624"
 
 SWUPDATE_USE_ROUND_ROBIN_HANDLER_REPO ?= "1"
-SWUPDATE_LUASCRIPT ?= "swupdate-handler-roundrobin/swupdate_handlers_roundrobin.lua"
+SWUPDATE_LUASCRIPT ?= "${@ 'swupdate-handler-roundrobin/swupdate_handlers_roundrobin.lua' \
+                           if d.getVar('SWUPDATE_USE_ROUND_ROBIN_HANDLER_REPO') == '1' else '' }"
 
 
 SWUPDATE_ROUND_ROBIN_HANDLER_CONFIG ?= "swupdate.handler.${SWUPDATE_BOOTLOADER}.ini"
 SRC_URI += "${@('file://' + d.getVar('SWUPDATE_ROUND_ROBIN_HANDLER_CONFIG')) if d.getVar('SWUPDATE_BOOTLOADER') else ''}"
 
+# lua version 5.2 is currently hard coded in swupdate @ debian salsa
 do_install[cleandirs] = "${D}/etc \
-                         ${D}/usr/share/lua/5.3"
+                         ${D}/usr/share/lua/5.2"
 do_install() {
     if [ -e ${WORKDIR}/${SWUPDATE_LUASCRIPT} ]; then
-        install -m 0644 ${WORKDIR}/${SWUPDATE_LUASCRIPT} ${D}/usr/share/lua/5.3/swupdate_handlers.lua
+        install -m 0644 ${WORKDIR}/${SWUPDATE_LUASCRIPT} ${D}/usr/share/lua/5.2/swupdate_handlers.lua
     fi
     if [ -e ${WORKDIR}/${SWUPDATE_ROUND_ROBIN_HANDLER_CONFIG} ]; then
        install -m 0644 ${WORKDIR}/${SWUPDATE_ROUND_ROBIN_HANDLER_CONFIG} ${D}/etc/swupdate.handler.ini
-- 
2.30.2



^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [cip-dev][isar-cip-core][PATCH 3/4] swupdate-handler: Use same lua version as swupdate-debian-gbp
@ 2021-10-05 14:13   ` Quirin Gylstorff
  0 siblings, 0 replies; 13+ messages in thread
From: Quirin Gylstorff @ 2021-10-05 14:13 UTC (permalink / raw)
  To: jan.kiszka, cip-dev

[-- Attachment #1: Type: text/plain, Size: 2200 bytes --]

From: Quirin Gylstorff <quirin.gylstorff@siemens.com>

Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
---
 .../swupdate-handlers/swupdate-handlers_0.1.bb        | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/recipes-core/swupdate-handlers/swupdate-handlers_0.1.bb b/recipes-core/swupdate-handlers/swupdate-handlers_0.1.bb
index b6cb30d..b96a6af 100644
--- a/recipes-core/swupdate-handlers/swupdate-handlers_0.1.bb
+++ b/recipes-core/swupdate-handlers/swupdate-handlers_0.1.bb
@@ -10,26 +10,25 @@
 
 inherit dpkg-raw
 
-DEPENDS = "swupdate"
-DEBIAN_DEPENDS = "swupdate"
-
 SRC_URI += " ${@ 'git://gitlab.com/cip-project/cip-sw-updates/swupdate-handler-roundrobin.git;protocol=https;destsuffix=swupdate-handler-roundrobin;name=swupdate-handler-roundrobin;nobranch=1' \
     if d.getVar('SWUPDATE_USE_ROUND_ROBIN_HANDLER_REPO') == '1' else '' \
     }"
 SRCREV_swupdate-handler-roundrobin ?= "6f561f136fdbe51d2e9066b934dfcb06b94c6624"
 
 SWUPDATE_USE_ROUND_ROBIN_HANDLER_REPO ?= "1"
-SWUPDATE_LUASCRIPT ?= "swupdate-handler-roundrobin/swupdate_handlers_roundrobin.lua"
+SWUPDATE_LUASCRIPT ?= "${@ 'swupdate-handler-roundrobin/swupdate_handlers_roundrobin.lua' \
+                           if d.getVar('SWUPDATE_USE_ROUND_ROBIN_HANDLER_REPO') == '1' else '' }"
 
 
 SWUPDATE_ROUND_ROBIN_HANDLER_CONFIG ?= "swupdate.handler.${SWUPDATE_BOOTLOADER}.ini"
 SRC_URI += "${@('file://' + d.getVar('SWUPDATE_ROUND_ROBIN_HANDLER_CONFIG')) if d.getVar('SWUPDATE_BOOTLOADER') else ''}"
 
+# lua version 5.2 is currently hard coded in swupdate @ debian salsa
 do_install[cleandirs] = "${D}/etc \
-                         ${D}/usr/share/lua/5.3"
+                         ${D}/usr/share/lua/5.2"
 do_install() {
     if [ -e ${WORKDIR}/${SWUPDATE_LUASCRIPT} ]; then
-        install -m 0644 ${WORKDIR}/${SWUPDATE_LUASCRIPT} ${D}/usr/share/lua/5.3/swupdate_handlers.lua
+        install -m 0644 ${WORKDIR}/${SWUPDATE_LUASCRIPT} ${D}/usr/share/lua/5.2/swupdate_handlers.lua
     fi
     if [ -e ${WORKDIR}/${SWUPDATE_ROUND_ROBIN_HANDLER_CONFIG} ]; then
        install -m 0644 ${WORKDIR}/${SWUPDATE_ROUND_ROBIN_HANDLER_CONFIG} ${D}/etc/swupdate.handler.ini
-- 
2.30.2


[-- Attachment #2: Type: text/plain, Size: 429 bytes --]


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#6788): https://lists.cip-project.org/g/cip-dev/message/6788
Mute This Topic: https://lists.cip-project.org/mt/86094387/4520388
Group Owner: cip-dev+owner@lists.cip-project.org
Unsubscribe: https://lists.cip-project.org/g/cip-dev/leave/10495289/4520388/727948398/xyzzy [cip-dev@archiver.kernel.org]
-=-=-=-=-=-=-=-=-=-=-=-


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [cip-dev][isar-cip-core][PATCH 4/4] swupdate: remove version 2021.04+isar-git
@ 2021-10-05 14:13   ` Quirin Gylstorff
  0 siblings, 0 replies; 13+ messages in thread
From: Q. Gylstorff @ 2021-10-05 14:13 UTC (permalink / raw)
  To: jan.kiszka, cip-dev

From: Quirin Gylstorff <quirin.gylstorff@siemens.com>

This version is replace by 2021.04-1+debian-gbp.

Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
---
 classes/kconfig-snippets.bbclass              | 90 -------------------
 classes/swupdate-config.bbclass               | 81 -----------------
 conf/distro/cip-core-bullseye.conf            |  1 -
 conf/distro/cip-core-buster.conf              |  1 -
 .../swupdate/files/debian/changelog.tmpl      |  6 --
 recipes-core/swupdate/files/debian/compat     |  1 -
 .../swupdate/files/debian/control.tmpl        | 15 ----
 recipes-core/swupdate/files/debian/copyright  | 36 --------
 recipes-core/swupdate/files/debian/rules.tmpl | 31 -------
 .../swupdate/files/debian/swupdate.examples   |  2 -
 .../swupdate/files/debian/swupdate.install    |  2 -
 .../swupdate/files/debian/swupdate.manpages   |  5 --
 .../swupdate/files/debian/swupdate.tmpfile    |  2 -
 recipes-core/swupdate/files/debian/watch      | 12 ---
 recipes-core/swupdate/files/postinst          |  2 -
 recipes-core/swupdate/files/swupdate.cfg      |  6 --
 .../swupdate/files/swupdate.service.example   | 11 ---
 .../swupdate/files/swupdate.socket.example    | 11 ---
 .../swupdate/files/swupdate.socket.tmpl       | 13 ---
 .../swupdate/files/swupdate_defconfig         | 83 -----------------
 .../swupdate_defconfig_efibootguard.snippet   |  3 -
 .../files/swupdate_defconfig_lua.snippet      |  2 -
 .../swupdate_defconfig_luahandler.snippet     |  4 -
 .../files/swupdate_defconfig_mtd.snippet      |  1 -
 .../files/swupdate_defconfig_u-boot.snippet   |  3 -
 .../files/swupdate_defconfig_ubi.snippet      |  6 --
 recipes-core/swupdate/swupdate.bb             | 48 ----------
 27 files changed, 478 deletions(-)
 delete mode 100644 classes/kconfig-snippets.bbclass
 delete mode 100644 classes/swupdate-config.bbclass
 delete mode 100644 recipes-core/swupdate/files/debian/changelog.tmpl
 delete mode 100644 recipes-core/swupdate/files/debian/compat
 delete mode 100644 recipes-core/swupdate/files/debian/control.tmpl
 delete mode 100644 recipes-core/swupdate/files/debian/copyright
 delete mode 100755 recipes-core/swupdate/files/debian/rules.tmpl
 delete mode 100644 recipes-core/swupdate/files/debian/swupdate.examples
 delete mode 100644 recipes-core/swupdate/files/debian/swupdate.install
 delete mode 100644 recipes-core/swupdate/files/debian/swupdate.manpages
 delete mode 100644 recipes-core/swupdate/files/debian/swupdate.tmpfile
 delete mode 100644 recipes-core/swupdate/files/debian/watch
 delete mode 100644 recipes-core/swupdate/files/postinst
 delete mode 100644 recipes-core/swupdate/files/swupdate.cfg
 delete mode 100644 recipes-core/swupdate/files/swupdate.service.example
 delete mode 100644 recipes-core/swupdate/files/swupdate.socket.example
 delete mode 100644 recipes-core/swupdate/files/swupdate.socket.tmpl
 delete mode 100644 recipes-core/swupdate/files/swupdate_defconfig
 delete mode 100644 recipes-core/swupdate/files/swupdate_defconfig_efibootguard.snippet
 delete mode 100644 recipes-core/swupdate/files/swupdate_defconfig_lua.snippet
 delete mode 100644 recipes-core/swupdate/files/swupdate_defconfig_luahandler.snippet
 delete mode 100644 recipes-core/swupdate/files/swupdate_defconfig_mtd.snippet
 delete mode 100644 recipes-core/swupdate/files/swupdate_defconfig_u-boot.snippet
 delete mode 100644 recipes-core/swupdate/files/swupdate_defconfig_ubi.snippet
 delete mode 100644 recipes-core/swupdate/swupdate.bb

diff --git a/classes/kconfig-snippets.bbclass b/classes/kconfig-snippets.bbclass
deleted file mode 100644
index d754654..0000000
--- a/classes/kconfig-snippets.bbclass
+++ /dev/null
@@ -1,90 +0,0 @@
-#
-# CIP Core, generic profile
-#
-# Copyright (c) Siemens AG, 2020
-#
-# Authors:
-#  Christian Storm <christian.storm@siemens.com>
-#
-# SPDX-License-Identifier: MIT
-
-KCONFIG_SNIPPETS = ""
-
-# The following function defines the kconfig snippet system
-# with automatich debian dependency injection
-#
-# To define a feature set, the user has to define the following
-# variable to an empty string:
-#
-# KFEATURE_featurename = ""
-#
-# Then, required additions to the variables can be defined:
-#
-# KFEATURE_featurename[KCONFIG_SNIPPETS] = "file://snippet-file-name.snippet"
-# KFEATURE_featurename[SRC_URI] = "file://required-file.txt"
-# KFEATURE_featurename[DEPENDS] = "deb-pkg1 deb-pkg2 deb-pkg3"
-# KFEATURE_featurename[DEBIAN_DEPENDS] = "deb-pkg1"
-# KFEATURE_featurename[BUILD_DEB_DEPENDS] = "deb-pkg1,deb-pkg2,deb-pkg3"
-
-# The 'KCONFIG_SNIPPETS' flag gives a list of URI entries, where only
-# file:// is supported. These snippets are appended to the DEFCONFIG file.
-#
-# Features can depend on other features via the following mechanism:
-#
-# KFEATURE_DEPS[feature1] = "feature2"
-
-python () {
-    requested_features = d.getVar("KFEATURES", True) or ""
-
-    features = set(requested_features.split())
-    old_features = set()
-    feature_deps = d.getVarFlags("KFEATURE_DEPS") or {}
-    while old_features != features:
-        diff_features = old_features.symmetric_difference(features)
-        old_features = features.copy()
-        for i in diff_features:
-            features.update(feature_deps.get(i, "").split())
-
-    for f in sorted(features):
-        bb.debug(2, "Feature: " + f)
-        varname = "KFEATURE_" + f
-        dummyvar = d.getVar(varname, False)
-        if dummyvar == None:
-            bb.error("Feature var " + f + " must be defined with needed flags.")
-        else:
-            feature_flags = d.getVarFlags(varname)
-            for feature_varname in sorted(feature_flags):
-                if feature_flags.get(feature_varname, "") != "":
-                    sep = " "
-
-                    # Required to add KCONFIG_SNIPPETS to SRC_URI here,
-                    # because 'SRC_URI += "${KCONFIG_SNIPPETS}"' would
-                    # conflict with SRC_APT feature.
-                    if feature_varname == "KCONFIG_SNIPPETS":
-                        d.appendVar('SRC_URI',
-                            " " + feature_flags[feature_varname].strip())
-
-                    # BUILD_DEP_DEPENDS and DEBIAN_DEPENDS is ',' separated
-                    # Only add ',' if there is already something there
-                    if feature_varname in ["BUILD_DEB_DEPENDS",
-                                           "DEBIAN_DEPENDS"]:
-                        sep = "," if d.getVar(feature_varname) else ""
-
-                    d.appendVar(feature_varname,
-                        sep + feature_flags[feature_varname].strip())
-}
-
-# DEFCONFIG must be a predefined bitbake variable and the corresponding file
-# must exist in the WORKDIR.
-# The resulting generated config is the same file suffixed with ".gen"
-
-do_prepare_build_prepend() {
-        sh -x
-        GENCONFIG="${WORKDIR}/${DEFCONFIG}".gen
-        rm -f "$GENCONFIG"
-        cp "${WORKDIR}/${DEFCONFIG}" "$GENCONFIG"
-        for CONFIG_SNIPPET in $(echo "${KCONFIG_SNIPPETS}" | sed 's#file://##g')
-        do
-                cat ${WORKDIR}/$CONFIG_SNIPPET >> "$GENCONFIG"
-        done
-}
diff --git a/classes/swupdate-config.bbclass b/classes/swupdate-config.bbclass
deleted file mode 100644
index 1d57ce1..0000000
--- a/classes/swupdate-config.bbclass
+++ /dev/null
@@ -1,81 +0,0 @@
-#
-# CIP Core, generic profile
-#
-# Copyright (c) Siemens AG, 2020
-#
-# Authors:
-#  Christian Storm <christian.storm@siemens.com>
-#
-# SPDX-License-Identifier: MIT
-
-# This class manages the config snippets together with their dependencies
-# to build SWUpdate
-
-inherit kconfig-snippets
-
-BUILD_DEB_DEPENDS = " \
-    zlib1g-dev, debhelper, libconfig-dev, libarchive-dev, \
-    python-sphinx:native, dh-systemd, libsystemd-dev, libssl-dev, pkg-config"
-
-KFEATURE_lua = ""
-KFEATURE_lua[BUILD_DEB_DEPENDS] = "liblua5.3-dev"
-KFEATURE_lua[KCONFIG_SNIPPETS] = "file://swupdate_defconfig_lua.snippet"
-
-KFEATURE_luahandler = ""
-KFEATURE_luahandler[KCONFIG_SNIPPETS] = "file://swupdate_defconfig_luahandler.snippet"
-KFEATURE_luahandler[SRC_URI] = "${@ 'file://${SWUPDATE_LUASCRIPT}' \
-                                  if d.getVar('SWUPDATE_USE_ROUND_ROBIN_HANDLER_REPO') == '0' else '' }"
-KFEATURE_DEPS = ""
-KFEATURE_DEPS[luahandler] = "lua"
-
-KFEATURE_efibootguard = ""
-KFEATURE_efibootguard[BUILD_DEB_DEPENDS] = "efibootguard-dev"
-KFEATURE_efibootguard[DEBIAN_DEPENDS] = ""
-KFEATURE_efibootguard[DEPENDS] = "efibootguard-dev"
-KFEATURE_efibootguard[KCONFIG_SNIPPETS] = "file://swupdate_defconfig_efibootguard.snippet"
-
-KFEATURE_mtd = ""
-KFEATURE_mtd[BUILD_DEB_DEPENDS] = "libmtd-dev"
-KFEATURE_mtd[DEPENDS] = "mtd-utils"
-KFEATURE_mtd[KCONFIG_SNIPPETS] = "file://swupdate_defconfig_mtd.snippet"
-
-KFEATURE_ubi = ""
-KFEATURE_ubi[BUILD_DEB_DEPENDS] = "libubi-dev"
-KFEATURE_ubi[KCONFIG_SNIPPETS] = "file://swupdate_defconfig_ubi.snippet"
-
-KFEATURE_DEPS[ubi] = "mtd"
-
-KFEATURE_u-boot = ""
-KFEATURE_u-boot[BUILD_DEB_DEPENDS] = "libubootenv-dev"
-# we need u-boot-${MACHINE}-config for fw_env.config
-# only custom build u-boot provides this package
-# for u-boot provided by debian u-boot-tools provides
-# example configurations at /usr/share/doc/u-boot-tools/examples
-KFEATURE_u-boot[DEBIAN_DEPENDS] = "${@ 'libubootenv0.1, u-boot-${MACHINE}-config' \
-                                          if d.getVar("U_BOOT_CONFIG_PACKAGE", True) == "1" \
-                                          else 'libubootenv0.1'}"
-KFEATURE_u-boot[DEPENDS] = "${@ 'libubootenv u-boot-${MACHINE}-config' \
-                                          if d.getVar("U_BOOT_CONFIG_PACKAGE", True) == "1" \
-                                          else 'libubootenv'}"
-KFEATURE_u-boot[KCONFIG_SNIPPETS] = "file://swupdate_defconfig_u-boot.snippet"
-
-def get_bootloader_featureset(d):
-    bootloader = d.getVar("SWUPDATE_BOOTLOADER", True) or ""
-    if bootloader == "efibootguard":
-        return "efibootguard"
-    if bootloader == "u-boot":
-        return "u-boot"
-    return ""
-
-SWUPDATE_KFEATURES ??= ""
-KFEATURES = "${SWUPDATE_KFEATURES}"
-KFEATURES += "${@get_bootloader_featureset(d)}"
-
-# Astonishingly, as an anonymous python function, SWUPDATE_BOOTLOADER is always None
-# one time before it gets set. So the following must be a task.
-python do_check_bootloader () {
-    bootloader = d.getVar("SWUPDATE_BOOTLOADER", True) or "None"
-    if not bootloader in ["efibootguard", "u-boot"]:
-        bb.warn("swupdate: SWUPDATE_BOOTLOADER set to incompatible value: " + bootloader)
-}
-addtask check_bootloader before do_fetch
diff --git a/conf/distro/cip-core-bullseye.conf b/conf/distro/cip-core-bullseye.conf
index 9357b6c..38014b4 100644
--- a/conf/distro/cip-core-bullseye.conf
+++ b/conf/distro/cip-core-bullseye.conf
@@ -14,4 +14,3 @@ require cip-core-common.inc
 
 PREFERRED_VERSION_linux-cip ?= "4.19.%"
 PREFERRED_VERSION_linux-cip-rt ?= "4.19.%"
-PREFERRED_VERSION_swupdate ?= "2021.04-1+debian-gbp"
diff --git a/conf/distro/cip-core-buster.conf b/conf/distro/cip-core-buster.conf
index 61fcb41..c5cb39c 100644
--- a/conf/distro/cip-core-buster.conf
+++ b/conf/distro/cip-core-buster.conf
@@ -14,4 +14,3 @@ require cip-core-common.inc
 
 PREFERRED_VERSION_linux-cip ?= "4.19.%"
 PREFERRED_VERSION_linux-cip-rt ?= "4.19.%"
-PREFERRED_VERSION_swupdate ?= "2021.4-git+isar"
diff --git a/recipes-core/swupdate/files/debian/changelog.tmpl b/recipes-core/swupdate/files/debian/changelog.tmpl
deleted file mode 100644
index 81087d3..0000000
--- a/recipes-core/swupdate/files/debian/changelog.tmpl
+++ /dev/null
@@ -1,6 +0,0 @@
-swupdate (${PV}) unstable; urgency=medium
-
-  * SWUpdate
-
- --  Christian Storm <christian.storm@siemens.com>  Thu, 31 Jan 2019 15:23:56 +0100
-
diff --git a/recipes-core/swupdate/files/debian/compat b/recipes-core/swupdate/files/debian/compat
deleted file mode 100644
index b4de394..0000000
--- a/recipes-core/swupdate/files/debian/compat
+++ /dev/null
@@ -1 +0,0 @@
-11
diff --git a/recipes-core/swupdate/files/debian/control.tmpl b/recipes-core/swupdate/files/debian/control.tmpl
deleted file mode 100644
index 2b92850..0000000
--- a/recipes-core/swupdate/files/debian/control.tmpl
+++ /dev/null
@@ -1,15 +0,0 @@
-Source: swupdate
-Section: embedded
-Priority: optional
-Maintainer: Stefano Babic <sbabic@denx.de>
-Build-Depends: ${BUILD_DEB_DEPENDS}
-Standards-Version: 4.2.1
-Homepage: http://sbabic.github.io/swupdate
-
-Package: swupdate
-Architecture: any
-Depends: ${DEBIAN_DEPENDS}
-Description: reliable way to update an embedded system
- This project is thought to help to update an embedded system from a storage media or from network.
- However, it should be mainly considered as a framework, where further protocols or installers
- (in SWUpdate they are called handlers) can be easily added to the application.
diff --git a/recipes-core/swupdate/files/debian/copyright b/recipes-core/swupdate/files/debian/copyright
deleted file mode 100644
index f920942..0000000
--- a/recipes-core/swupdate/files/debian/copyright
+++ /dev/null
@@ -1,36 +0,0 @@
-Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
-Upstream-Name: swupdate
-Maintainer: Stefano Babic <sbabic@denx.de>
-Source: http://github.com/sbabic/swupdate
-
-Files: *
-Copyright: 2014-2017 Stefano Babic <sbabic@denx.de>
-
-License: GPL-2 with OpenSSL exception
- This package is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
- .
- In addition, as a special exception, the author of this
- program gives permission to link the code of its
- release with the OpenSSL project's "OpenSSL" library (or
- with modified versions of it that use the same license as
- the "OpenSSL" library), and distribute the linked
- executables. You must obey the GNU General Public
- License in all respects for all of the code used other
- than "OpenSSL".  If you modify this file, you may extend
- this exception to your version of the file, but you are
- not obligated to do so.  If you do not wish to do so,
- delete this exception statement from your version.
- .
- This package is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- GNU General Public License for more details.
- .
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <https://www.gnu.org/licenses/>
- .
- On Debian systems, the complete text of the GNU General
- Public License version 2 can be found in "/usr/share/common-licenses/GPL-2".
diff --git a/recipes-core/swupdate/files/debian/rules.tmpl b/recipes-core/swupdate/files/debian/rules.tmpl
deleted file mode 100755
index ec83a88..0000000
--- a/recipes-core/swupdate/files/debian/rules.tmpl
+++ /dev/null
@@ -1,31 +0,0 @@
-#!/usr/bin/make -f
-
-ifneq ($(DEB_BUILD_GNU_TYPE),$(DEB_HOST_GNU_TYPE))
-export CROSS_COMPILE=$(DEB_HOST_GNU_TYPE)-
-export PKG_CONFIG_PATH=/usr/lib/$(DEB_HOST_GNU_TYPE)/pkgconfig
-export CC=$(DEB_HOST_GNU_TYPE)-gcc
-export LD=$(DEB_HOST_GNU_TYPE)-gcc
-endif
-
-export DH_VERBOSE = 1
-
-export DEB_BUILD_MAINT_OPTIONS = hardening=+bindnow
-
-documentation: configure
-	make man
-
-configure:
-	make ${DEFCONFIG}
-
-build: documentation configure
-	dh $@
-
-%:
-	echo $@
-	dh $@
-
-override_dh_installchangelogs:
-	true
-
-override_dh_installdocs:
-	true
diff --git a/recipes-core/swupdate/files/debian/swupdate.examples b/recipes-core/swupdate/files/debian/swupdate.examples
deleted file mode 100644
index c257b75..0000000
--- a/recipes-core/swupdate/files/debian/swupdate.examples
+++ /dev/null
@@ -1,2 +0,0 @@
-examples/configuration
-examples/description
diff --git a/recipes-core/swupdate/files/debian/swupdate.install b/recipes-core/swupdate/files/debian/swupdate.install
deleted file mode 100644
index 8957cc6..0000000
--- a/recipes-core/swupdate/files/debian/swupdate.install
+++ /dev/null
@@ -1,2 +0,0 @@
-swupdate usr/bin
-swupdate.cfg /etc
diff --git a/recipes-core/swupdate/files/debian/swupdate.manpages b/recipes-core/swupdate/files/debian/swupdate.manpages
deleted file mode 100644
index c3438e0..0000000
--- a/recipes-core/swupdate/files/debian/swupdate.manpages
+++ /dev/null
@@ -1,5 +0,0 @@
-doc/build/man/swupdate.1
-doc/build/man/client.1
-doc/build/man/sendtohawkbit.1
-doc/build/man/hawkbitcfg.1
-doc/build/man/progress.1
diff --git a/recipes-core/swupdate/files/debian/swupdate.tmpfile b/recipes-core/swupdate/files/debian/swupdate.tmpfile
deleted file mode 100644
index 4743672..0000000
--- a/recipes-core/swupdate/files/debian/swupdate.tmpfile
+++ /dev/null
@@ -1,2 +0,0 @@
-X /tmp/datadst
-X /tmp/scripts
diff --git a/recipes-core/swupdate/files/debian/watch b/recipes-core/swupdate/files/debian/watch
deleted file mode 100644
index bc4c53e..0000000
--- a/recipes-core/swupdate/files/debian/watch
+++ /dev/null
@@ -1,12 +0,0 @@
-# Example watch control file for uscan
-# Rename this file to "watch" and then you can run the "uscan" command
-# to check for upstream updates and more.
-# See uscan(1) for format
-
-# Compulsory line, this is a version 4 file
-version=4
-
-# GitHub hosted projects
-opts="filenamemangle="s%(?:.*?)?v?(\d[\d.]*)\.tar\.gz%<project>-$1.tar.gz%" \
-   https://github.com/<user>/swupdate/tags \
-   (?:.*?/)?v?(\d[\d.]*)\.tar\.gz debian uupdate
diff --git a/recipes-core/swupdate/files/postinst b/recipes-core/swupdate/files/postinst
deleted file mode 100644
index f15ac10..0000000
--- a/recipes-core/swupdate/files/postinst
+++ /dev/null
@@ -1,2 +0,0 @@
-#!/bin/sh
-deb-systemd-helper enable swupdate.socket || true
diff --git a/recipes-core/swupdate/files/swupdate.cfg b/recipes-core/swupdate/files/swupdate.cfg
deleted file mode 100644
index e0222f1..0000000
--- a/recipes-core/swupdate/files/swupdate.cfg
+++ /dev/null
@@ -1,6 +0,0 @@
-globals :
-{
-    verbose = true;
-    loglevel = 10;
-    syslog = false;
-};
diff --git a/recipes-core/swupdate/files/swupdate.service.example b/recipes-core/swupdate/files/swupdate.service.example
deleted file mode 100644
index d0b821e..0000000
--- a/recipes-core/swupdate/files/swupdate.service.example
+++ /dev/null
@@ -1,11 +0,0 @@
-[Unit]
-Description=SWUpdate daemon
-Documentation=https://github.com/sbabic/swupdate
-
-[Service]
-Type=simple
-ExecStart=/usr/bin/swupdate -f /etc/swupdate.cfg
-KillMode=mixed
-
-[Install]
-WantedBy=multi-user.target
diff --git a/recipes-core/swupdate/files/swupdate.socket.example b/recipes-core/swupdate/files/swupdate.socket.example
deleted file mode 100644
index 2b75671..0000000
--- a/recipes-core/swupdate/files/swupdate.socket.example
+++ /dev/null
@@ -1,11 +0,0 @@
-[Unit]
-Description=SWUpdate socket listener
-Documentation=https://github.com/sbabic/swupdate
-Documentation=https://sbabic.github.io/swupdate
-
-[Socket]
-ListenStream=/tmp/sockinstctrl
-ListenStream=/tmp/swupdateprog
-
-[Install]
-WantedBy=sockets.target
diff --git a/recipes-core/swupdate/files/swupdate.socket.tmpl b/recipes-core/swupdate/files/swupdate.socket.tmpl
deleted file mode 100644
index 8e7fc1d..0000000
--- a/recipes-core/swupdate/files/swupdate.socket.tmpl
+++ /dev/null
@@ -1,13 +0,0 @@
-[Unit]
-Description=SWUpdate socket listener
-Documentation=https://github.com/sbabic/swupdate
-Documentation=https://sbabic.github.io/swupdate
-
-[Socket]
-SocketUser=${SWUPDATE_SOCKET_OWNER}
-SocketGroup=root
-ListenStream=/tmp/sockinstctrl
-ListenStream=/tmp/swupdateprog
-
-[Install]
-WantedBy=sockets.target
diff --git a/recipes-core/swupdate/files/swupdate_defconfig b/recipes-core/swupdate/files/swupdate_defconfig
deleted file mode 100644
index 9ae7cb5..0000000
--- a/recipes-core/swupdate/files/swupdate_defconfig
+++ /dev/null
@@ -1,83 +0,0 @@
-#
-# Automatically generated file; DO NOT EDIT.
-# Swupdate Configuration
-#
-CONFIG_HAVE_DOT_CONFIG=y
-
-#
-# Swupdate Settings
-#
-
-#
-# General Configuration
-#
-# CONFIG_CURL is not set
-# CONFIG_CURL_SSL is not set
-CONFIG_SYSTEMD=y
-CONFIG_SCRIPTS=y
-# CONFIG_HW_COMPATIBILITY is not set
-CONFIG_SW_VERSIONS_FILE="/etc/sw-versions"
-
-#
-# Socket Paths
-#
-CONFIG_SOCKET_CTRL_PATH="/tmp/sockinstctrl"
-CONFIG_SOCKET_PROGRESS_PATH="/tmp/swupdateprog"
-CONFIG_SOCKET_REMOTE_HANDLER_DIRECTORY="/tmp/"
-# CONFIG_MTD is not set
-# CONFIG_LUA is not set
-# CONFIG_LUAPKG is not set
-# CONFIG_FEATURE_SYSLOG is not set
-
-#
-# Build Options
-#
-CONFIG_CROSS_COMPILE=""
-CONFIG_SYSROOT=""
-CONFIG_EXTRA_CFLAGS=""
-CONFIG_EXTRA_LDFLAGS=""
-CONFIG_EXTRA_LDLIBS=""
-
-#
-# Debugging Options
-#
-# CONFIG_DEBUG is not set
-# CONFIG_WERROR is not set
-# CONFIG_NOCLEANUP is not set
-# CONFIG_BOOTLOADER_EBG is not set
-# CONFIG_UBOOT is not set
-# CONFIG_BOOTLOADER_NONE is not set
-# CONFIG_BOOTLOADER_GRUB is not set
-# CONFIG_DOWNLOAD is not set
-# CONFIG_DOWNLOAD_SSL is not set
-# CONFIG_CHANNEL_CURL is not set
-# CONFIG_HASH_VERIFY=y
-# CONFIG_SIGNED_IMAGES is not set
-# CONFIG_ENCRYPTED_IMAGES is not set
-# CONFIG_SURICATTA is not set
-# CONFIG_WEBSERVER is not set
-CONFIG_GUNZIP=y
-
-#
-# Parser Features
-#
-CONFIG_LIBCONFIG=y
-CONFIG_PARSERROOT=""
-# CONFIG_JSON is not set
-# CONFIG_LUAEXTERNAL is not set
-# CONFIG_SETEXTPARSERNAME is not set
-# CONFIG_SETSWDESCRIPTION is not set
-
-#
-# Image Handlers
-#
-CONFIG_RAW=y
-# CONFIG_LUASCRIPTHANDLER is not set
-# CONFIG_SHELLSCRIPTHANDLER is not set
-# CONFIG_HANDLER_IN_LUA is not set
-# CONFIG_EMBEDDED_LUA_HANDLER is not set
-# CONFIG_EMBEDDED_LUA_HANDLER_SOURCE is not set
-CONFIG_ARCHIVE=y
-# CONFIG_REMOTE_HANDLER is not set
-# CONFIG_SWUFORWARDER_HANDLER is not set
-# CONFIG_BOOTLOADERHANDLER is not set
diff --git a/recipes-core/swupdate/files/swupdate_defconfig_efibootguard.snippet b/recipes-core/swupdate/files/swupdate_defconfig_efibootguard.snippet
deleted file mode 100644
index 8e3688c..0000000
--- a/recipes-core/swupdate/files/swupdate_defconfig_efibootguard.snippet
+++ /dev/null
@@ -1,3 +0,0 @@
-CONFIG_BOOTLOADER_NONE=n
-CONFIG_BOOTLOADER_EBG=y
-CONFIG_BOOTLOADERHANDLER=y
diff --git a/recipes-core/swupdate/files/swupdate_defconfig_lua.snippet b/recipes-core/swupdate/files/swupdate_defconfig_lua.snippet
deleted file mode 100644
index b39f9df..0000000
--- a/recipes-core/swupdate/files/swupdate_defconfig_lua.snippet
+++ /dev/null
@@ -1,2 +0,0 @@
-CONFIG_LUA=y
-CONFIG_LUAPKG="lua53"
diff --git a/recipes-core/swupdate/files/swupdate_defconfig_luahandler.snippet b/recipes-core/swupdate/files/swupdate_defconfig_luahandler.snippet
deleted file mode 100644
index b4a2de8..0000000
--- a/recipes-core/swupdate/files/swupdate_defconfig_luahandler.snippet
+++ /dev/null
@@ -1,4 +0,0 @@
-CONFIG_LUASCRIPTHANDLER=y
-CONFIG_HANDLER_IN_LUA=y
-CONFIG_EMBEDDED_LUA_HANDLER=y
-CONFIG_EMBEDDED_LUA_HANDLER_SOURCE="swupdate_handlers.lua"
diff --git a/recipes-core/swupdate/files/swupdate_defconfig_mtd.snippet b/recipes-core/swupdate/files/swupdate_defconfig_mtd.snippet
deleted file mode 100644
index eab98dd..0000000
--- a/recipes-core/swupdate/files/swupdate_defconfig_mtd.snippet
+++ /dev/null
@@ -1 +0,0 @@
-CONFIG_MTD=y
diff --git a/recipes-core/swupdate/files/swupdate_defconfig_u-boot.snippet b/recipes-core/swupdate/files/swupdate_defconfig_u-boot.snippet
deleted file mode 100644
index 6b5832a..0000000
--- a/recipes-core/swupdate/files/swupdate_defconfig_u-boot.snippet
+++ /dev/null
@@ -1,3 +0,0 @@
-CONFIG_UBOOT=y
-CONFIG_UBOOT_FWENV="/etc/fw_env.config"
-CONFIG_BOOTLOADERHANDLER=y
diff --git a/recipes-core/swupdate/files/swupdate_defconfig_ubi.snippet b/recipes-core/swupdate/files/swupdate_defconfig_ubi.snippet
deleted file mode 100644
index d1c7732..0000000
--- a/recipes-core/swupdate/files/swupdate_defconfig_ubi.snippet
+++ /dev/null
@@ -1,6 +0,0 @@
-CONFIG_UBIVOL=y
-CONFIG_UBIATTACH=y
-CONFIG_UBIBLACKLIST=""
-CONFIG_UBIWHITELIST=""
-CONFIG_UBIVIDOFFSET=0
-CONFIG_CFI=y
diff --git a/recipes-core/swupdate/swupdate.bb b/recipes-core/swupdate/swupdate.bb
deleted file mode 100644
index a29a797..0000000
--- a/recipes-core/swupdate/swupdate.bb
+++ /dev/null
@@ -1,48 +0,0 @@
-#
-# CIP Core, generic profile
-#
-# Copyright (c) Siemens AG, 2020
-#
-# Authors:
-#  Quirin Gylstorff <quirin.gylstorff@siemens.com>
-#
-# SPDX-License-Identifier: MIT
-
-DESCRIPTION = "swupdate utility for software updates"
-HOMEPAGE= "https://github.com/sbabic/swupdate"
-LICENSE = "GPL-2.0"
-LIC_FILES_CHKSUM = "file://${LAYERDIR_isar}/licenses/COPYING.GPLv2;md5=751419260aa954499f7abaabaa882bbe"
-
-SRC_URI = "git://github.com/sbabic/swupdate.git;branch=master;protocol=https"
-
-SRCREV = "47a1246435fdb78fba15cc969596994130412956"
-PV = "2021.4-git+isar"
-
-DEFCONFIG := "swupdate_defconfig"
-
-SRC_URI += "file://debian \
-            file://${DEFCONFIG} \
-            file://${PN}.cfg"
-
-DEBIAN_DEPENDS = "${shlibs:Depends}, ${misc:Depends}"
-
-inherit dpkg
-inherit swupdate-config
-
-KFEATURES += "luahandler"
-
-S = "${WORKDIR}/git"
-
-TEMPLATE_FILES = "debian/changelog.tmpl debian/control.tmpl debian/rules.tmpl"
-TEMPLATE_VARS += "BUILD_DEB_DEPENDS DEFCONFIG DEBIAN_DEPENDS"
-
-do_prepare_build() {
-    cp -R ${WORKDIR}/debian ${S}
-
-    install -m 0644 ${WORKDIR}/${PN}.cfg ${S}/swupdate.cfg
-    install -m 0644 ${WORKDIR}/${DEFCONFIG}.gen ${S}/configs/${DEFCONFIG}
-
-    if ! grep -q "configs/${DEFCONFIG}" ${S}/.gitignore; then
-        echo "configs/${DEFCONFIG}" >> ${S}/.gitignore
-    fi
-}
-- 
2.30.2



^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [cip-dev][isar-cip-core][PATCH 4/4] swupdate: remove version 2021.04+isar-git
@ 2021-10-05 14:13   ` Quirin Gylstorff
  0 siblings, 0 replies; 13+ messages in thread
From: Quirin Gylstorff @ 2021-10-05 14:13 UTC (permalink / raw)
  To: jan.kiszka, cip-dev

[-- Attachment #1: Type: text/plain, Size: 25428 bytes --]

From: Quirin Gylstorff <quirin.gylstorff@siemens.com>

This version is replace by 2021.04-1+debian-gbp.

Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
---
 classes/kconfig-snippets.bbclass              | 90 -------------------
 classes/swupdate-config.bbclass               | 81 -----------------
 conf/distro/cip-core-bullseye.conf            |  1 -
 conf/distro/cip-core-buster.conf              |  1 -
 .../swupdate/files/debian/changelog.tmpl      |  6 --
 recipes-core/swupdate/files/debian/compat     |  1 -
 .../swupdate/files/debian/control.tmpl        | 15 ----
 recipes-core/swupdate/files/debian/copyright  | 36 --------
 recipes-core/swupdate/files/debian/rules.tmpl | 31 -------
 .../swupdate/files/debian/swupdate.examples   |  2 -
 .../swupdate/files/debian/swupdate.install    |  2 -
 .../swupdate/files/debian/swupdate.manpages   |  5 --
 .../swupdate/files/debian/swupdate.tmpfile    |  2 -
 recipes-core/swupdate/files/debian/watch      | 12 ---
 recipes-core/swupdate/files/postinst          |  2 -
 recipes-core/swupdate/files/swupdate.cfg      |  6 --
 .../swupdate/files/swupdate.service.example   | 11 ---
 .../swupdate/files/swupdate.socket.example    | 11 ---
 .../swupdate/files/swupdate.socket.tmpl       | 13 ---
 .../swupdate/files/swupdate_defconfig         | 83 -----------------
 .../swupdate_defconfig_efibootguard.snippet   |  3 -
 .../files/swupdate_defconfig_lua.snippet      |  2 -
 .../swupdate_defconfig_luahandler.snippet     |  4 -
 .../files/swupdate_defconfig_mtd.snippet      |  1 -
 .../files/swupdate_defconfig_u-boot.snippet   |  3 -
 .../files/swupdate_defconfig_ubi.snippet      |  6 --
 recipes-core/swupdate/swupdate.bb             | 48 ----------
 27 files changed, 478 deletions(-)
 delete mode 100644 classes/kconfig-snippets.bbclass
 delete mode 100644 classes/swupdate-config.bbclass
 delete mode 100644 recipes-core/swupdate/files/debian/changelog.tmpl
 delete mode 100644 recipes-core/swupdate/files/debian/compat
 delete mode 100644 recipes-core/swupdate/files/debian/control.tmpl
 delete mode 100644 recipes-core/swupdate/files/debian/copyright
 delete mode 100755 recipes-core/swupdate/files/debian/rules.tmpl
 delete mode 100644 recipes-core/swupdate/files/debian/swupdate.examples
 delete mode 100644 recipes-core/swupdate/files/debian/swupdate.install
 delete mode 100644 recipes-core/swupdate/files/debian/swupdate.manpages
 delete mode 100644 recipes-core/swupdate/files/debian/swupdate.tmpfile
 delete mode 100644 recipes-core/swupdate/files/debian/watch
 delete mode 100644 recipes-core/swupdate/files/postinst
 delete mode 100644 recipes-core/swupdate/files/swupdate.cfg
 delete mode 100644 recipes-core/swupdate/files/swupdate.service.example
 delete mode 100644 recipes-core/swupdate/files/swupdate.socket.example
 delete mode 100644 recipes-core/swupdate/files/swupdate.socket.tmpl
 delete mode 100644 recipes-core/swupdate/files/swupdate_defconfig
 delete mode 100644 recipes-core/swupdate/files/swupdate_defconfig_efibootguard.snippet
 delete mode 100644 recipes-core/swupdate/files/swupdate_defconfig_lua.snippet
 delete mode 100644 recipes-core/swupdate/files/swupdate_defconfig_luahandler.snippet
 delete mode 100644 recipes-core/swupdate/files/swupdate_defconfig_mtd.snippet
 delete mode 100644 recipes-core/swupdate/files/swupdate_defconfig_u-boot.snippet
 delete mode 100644 recipes-core/swupdate/files/swupdate_defconfig_ubi.snippet
 delete mode 100644 recipes-core/swupdate/swupdate.bb

diff --git a/classes/kconfig-snippets.bbclass b/classes/kconfig-snippets.bbclass
deleted file mode 100644
index d754654..0000000
--- a/classes/kconfig-snippets.bbclass
+++ /dev/null
@@ -1,90 +0,0 @@
-#
-# CIP Core, generic profile
-#
-# Copyright (c) Siemens AG, 2020
-#
-# Authors:
-#  Christian Storm <christian.storm@siemens.com>
-#
-# SPDX-License-Identifier: MIT
-
-KCONFIG_SNIPPETS = ""
-
-# The following function defines the kconfig snippet system
-# with automatich debian dependency injection
-#
-# To define a feature set, the user has to define the following
-# variable to an empty string:
-#
-# KFEATURE_featurename = ""
-#
-# Then, required additions to the variables can be defined:
-#
-# KFEATURE_featurename[KCONFIG_SNIPPETS] = "file://snippet-file-name.snippet"
-# KFEATURE_featurename[SRC_URI] = "file://required-file.txt"
-# KFEATURE_featurename[DEPENDS] = "deb-pkg1 deb-pkg2 deb-pkg3"
-# KFEATURE_featurename[DEBIAN_DEPENDS] = "deb-pkg1"
-# KFEATURE_featurename[BUILD_DEB_DEPENDS] = "deb-pkg1,deb-pkg2,deb-pkg3"
-
-# The 'KCONFIG_SNIPPETS' flag gives a list of URI entries, where only
-# file:// is supported. These snippets are appended to the DEFCONFIG file.
-#
-# Features can depend on other features via the following mechanism:
-#
-# KFEATURE_DEPS[feature1] = "feature2"
-
-python () {
-    requested_features = d.getVar("KFEATURES", True) or ""
-
-    features = set(requested_features.split())
-    old_features = set()
-    feature_deps = d.getVarFlags("KFEATURE_DEPS") or {}
-    while old_features != features:
-        diff_features = old_features.symmetric_difference(features)
-        old_features = features.copy()
-        for i in diff_features:
-            features.update(feature_deps.get(i, "").split())
-
-    for f in sorted(features):
-        bb.debug(2, "Feature: " + f)
-        varname = "KFEATURE_" + f
-        dummyvar = d.getVar(varname, False)
-        if dummyvar == None:
-            bb.error("Feature var " + f + " must be defined with needed flags.")
-        else:
-            feature_flags = d.getVarFlags(varname)
-            for feature_varname in sorted(feature_flags):
-                if feature_flags.get(feature_varname, "") != "":
-                    sep = " "
-
-                    # Required to add KCONFIG_SNIPPETS to SRC_URI here,
-                    # because 'SRC_URI += "${KCONFIG_SNIPPETS}"' would
-                    # conflict with SRC_APT feature.
-                    if feature_varname == "KCONFIG_SNIPPETS":
-                        d.appendVar('SRC_URI',
-                            " " + feature_flags[feature_varname].strip())
-
-                    # BUILD_DEP_DEPENDS and DEBIAN_DEPENDS is ',' separated
-                    # Only add ',' if there is already something there
-                    if feature_varname in ["BUILD_DEB_DEPENDS",
-                                           "DEBIAN_DEPENDS"]:
-                        sep = "," if d.getVar(feature_varname) else ""
-
-                    d.appendVar(feature_varname,
-                        sep + feature_flags[feature_varname].strip())
-}
-
-# DEFCONFIG must be a predefined bitbake variable and the corresponding file
-# must exist in the WORKDIR.
-# The resulting generated config is the same file suffixed with ".gen"
-
-do_prepare_build_prepend() {
-        sh -x
-        GENCONFIG="${WORKDIR}/${DEFCONFIG}".gen
-        rm -f "$GENCONFIG"
-        cp "${WORKDIR}/${DEFCONFIG}" "$GENCONFIG"
-        for CONFIG_SNIPPET in $(echo "${KCONFIG_SNIPPETS}" | sed 's#file://##g')
-        do
-                cat ${WORKDIR}/$CONFIG_SNIPPET >> "$GENCONFIG"
-        done
-}
diff --git a/classes/swupdate-config.bbclass b/classes/swupdate-config.bbclass
deleted file mode 100644
index 1d57ce1..0000000
--- a/classes/swupdate-config.bbclass
+++ /dev/null
@@ -1,81 +0,0 @@
-#
-# CIP Core, generic profile
-#
-# Copyright (c) Siemens AG, 2020
-#
-# Authors:
-#  Christian Storm <christian.storm@siemens.com>
-#
-# SPDX-License-Identifier: MIT
-
-# This class manages the config snippets together with their dependencies
-# to build SWUpdate
-
-inherit kconfig-snippets
-
-BUILD_DEB_DEPENDS = " \
-    zlib1g-dev, debhelper, libconfig-dev, libarchive-dev, \
-    python-sphinx:native, dh-systemd, libsystemd-dev, libssl-dev, pkg-config"
-
-KFEATURE_lua = ""
-KFEATURE_lua[BUILD_DEB_DEPENDS] = "liblua5.3-dev"
-KFEATURE_lua[KCONFIG_SNIPPETS] = "file://swupdate_defconfig_lua.snippet"
-
-KFEATURE_luahandler = ""
-KFEATURE_luahandler[KCONFIG_SNIPPETS] = "file://swupdate_defconfig_luahandler.snippet"
-KFEATURE_luahandler[SRC_URI] = "${@ 'file://${SWUPDATE_LUASCRIPT}' \
-                                  if d.getVar('SWUPDATE_USE_ROUND_ROBIN_HANDLER_REPO') == '0' else '' }"
-KFEATURE_DEPS = ""
-KFEATURE_DEPS[luahandler] = "lua"
-
-KFEATURE_efibootguard = ""
-KFEATURE_efibootguard[BUILD_DEB_DEPENDS] = "efibootguard-dev"
-KFEATURE_efibootguard[DEBIAN_DEPENDS] = ""
-KFEATURE_efibootguard[DEPENDS] = "efibootguard-dev"
-KFEATURE_efibootguard[KCONFIG_SNIPPETS] = "file://swupdate_defconfig_efibootguard.snippet"
-
-KFEATURE_mtd = ""
-KFEATURE_mtd[BUILD_DEB_DEPENDS] = "libmtd-dev"
-KFEATURE_mtd[DEPENDS] = "mtd-utils"
-KFEATURE_mtd[KCONFIG_SNIPPETS] = "file://swupdate_defconfig_mtd.snippet"
-
-KFEATURE_ubi = ""
-KFEATURE_ubi[BUILD_DEB_DEPENDS] = "libubi-dev"
-KFEATURE_ubi[KCONFIG_SNIPPETS] = "file://swupdate_defconfig_ubi.snippet"
-
-KFEATURE_DEPS[ubi] = "mtd"
-
-KFEATURE_u-boot = ""
-KFEATURE_u-boot[BUILD_DEB_DEPENDS] = "libubootenv-dev"
-# we need u-boot-${MACHINE}-config for fw_env.config
-# only custom build u-boot provides this package
-# for u-boot provided by debian u-boot-tools provides
-# example configurations at /usr/share/doc/u-boot-tools/examples
-KFEATURE_u-boot[DEBIAN_DEPENDS] = "${@ 'libubootenv0.1, u-boot-${MACHINE}-config' \
-                                          if d.getVar("U_BOOT_CONFIG_PACKAGE", True) == "1" \
-                                          else 'libubootenv0.1'}"
-KFEATURE_u-boot[DEPENDS] = "${@ 'libubootenv u-boot-${MACHINE}-config' \
-                                          if d.getVar("U_BOOT_CONFIG_PACKAGE", True) == "1" \
-                                          else 'libubootenv'}"
-KFEATURE_u-boot[KCONFIG_SNIPPETS] = "file://swupdate_defconfig_u-boot.snippet"
-
-def get_bootloader_featureset(d):
-    bootloader = d.getVar("SWUPDATE_BOOTLOADER", True) or ""
-    if bootloader == "efibootguard":
-        return "efibootguard"
-    if bootloader == "u-boot":
-        return "u-boot"
-    return ""
-
-SWUPDATE_KFEATURES ??= ""
-KFEATURES = "${SWUPDATE_KFEATURES}"
-KFEATURES += "${@get_bootloader_featureset(d)}"
-
-# Astonishingly, as an anonymous python function, SWUPDATE_BOOTLOADER is always None
-# one time before it gets set. So the following must be a task.
-python do_check_bootloader () {
-    bootloader = d.getVar("SWUPDATE_BOOTLOADER", True) or "None"
-    if not bootloader in ["efibootguard", "u-boot"]:
-        bb.warn("swupdate: SWUPDATE_BOOTLOADER set to incompatible value: " + bootloader)
-}
-addtask check_bootloader before do_fetch
diff --git a/conf/distro/cip-core-bullseye.conf b/conf/distro/cip-core-bullseye.conf
index 9357b6c..38014b4 100644
--- a/conf/distro/cip-core-bullseye.conf
+++ b/conf/distro/cip-core-bullseye.conf
@@ -14,4 +14,3 @@ require cip-core-common.inc
 
 PREFERRED_VERSION_linux-cip ?= "4.19.%"
 PREFERRED_VERSION_linux-cip-rt ?= "4.19.%"
-PREFERRED_VERSION_swupdate ?= "2021.04-1+debian-gbp"
diff --git a/conf/distro/cip-core-buster.conf b/conf/distro/cip-core-buster.conf
index 61fcb41..c5cb39c 100644
--- a/conf/distro/cip-core-buster.conf
+++ b/conf/distro/cip-core-buster.conf
@@ -14,4 +14,3 @@ require cip-core-common.inc
 
 PREFERRED_VERSION_linux-cip ?= "4.19.%"
 PREFERRED_VERSION_linux-cip-rt ?= "4.19.%"
-PREFERRED_VERSION_swupdate ?= "2021.4-git+isar"
diff --git a/recipes-core/swupdate/files/debian/changelog.tmpl b/recipes-core/swupdate/files/debian/changelog.tmpl
deleted file mode 100644
index 81087d3..0000000
--- a/recipes-core/swupdate/files/debian/changelog.tmpl
+++ /dev/null
@@ -1,6 +0,0 @@
-swupdate (${PV}) unstable; urgency=medium
-
-  * SWUpdate
-
- --  Christian Storm <christian.storm@siemens.com>  Thu, 31 Jan 2019 15:23:56 +0100
-
diff --git a/recipes-core/swupdate/files/debian/compat b/recipes-core/swupdate/files/debian/compat
deleted file mode 100644
index b4de394..0000000
--- a/recipes-core/swupdate/files/debian/compat
+++ /dev/null
@@ -1 +0,0 @@
-11
diff --git a/recipes-core/swupdate/files/debian/control.tmpl b/recipes-core/swupdate/files/debian/control.tmpl
deleted file mode 100644
index 2b92850..0000000
--- a/recipes-core/swupdate/files/debian/control.tmpl
+++ /dev/null
@@ -1,15 +0,0 @@
-Source: swupdate
-Section: embedded
-Priority: optional
-Maintainer: Stefano Babic <sbabic@denx.de>
-Build-Depends: ${BUILD_DEB_DEPENDS}
-Standards-Version: 4.2.1
-Homepage: http://sbabic.github.io/swupdate
-
-Package: swupdate
-Architecture: any
-Depends: ${DEBIAN_DEPENDS}
-Description: reliable way to update an embedded system
- This project is thought to help to update an embedded system from a storage media or from network.
- However, it should be mainly considered as a framework, where further protocols or installers
- (in SWUpdate they are called handlers) can be easily added to the application.
diff --git a/recipes-core/swupdate/files/debian/copyright b/recipes-core/swupdate/files/debian/copyright
deleted file mode 100644
index f920942..0000000
--- a/recipes-core/swupdate/files/debian/copyright
+++ /dev/null
@@ -1,36 +0,0 @@
-Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
-Upstream-Name: swupdate
-Maintainer: Stefano Babic <sbabic@denx.de>
-Source: http://github.com/sbabic/swupdate
-
-Files: *
-Copyright: 2014-2017 Stefano Babic <sbabic@denx.de>
-
-License: GPL-2 with OpenSSL exception
- This package is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
- .
- In addition, as a special exception, the author of this
- program gives permission to link the code of its
- release with the OpenSSL project's "OpenSSL" library (or
- with modified versions of it that use the same license as
- the "OpenSSL" library), and distribute the linked
- executables. You must obey the GNU General Public
- License in all respects for all of the code used other
- than "OpenSSL".  If you modify this file, you may extend
- this exception to your version of the file, but you are
- not obligated to do so.  If you do not wish to do so,
- delete this exception statement from your version.
- .
- This package is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- GNU General Public License for more details.
- .
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <https://www.gnu.org/licenses/>
- .
- On Debian systems, the complete text of the GNU General
- Public License version 2 can be found in "/usr/share/common-licenses/GPL-2".
diff --git a/recipes-core/swupdate/files/debian/rules.tmpl b/recipes-core/swupdate/files/debian/rules.tmpl
deleted file mode 100755
index ec83a88..0000000
--- a/recipes-core/swupdate/files/debian/rules.tmpl
+++ /dev/null
@@ -1,31 +0,0 @@
-#!/usr/bin/make -f
-
-ifneq ($(DEB_BUILD_GNU_TYPE),$(DEB_HOST_GNU_TYPE))
-export CROSS_COMPILE=$(DEB_HOST_GNU_TYPE)-
-export PKG_CONFIG_PATH=/usr/lib/$(DEB_HOST_GNU_TYPE)/pkgconfig
-export CC=$(DEB_HOST_GNU_TYPE)-gcc
-export LD=$(DEB_HOST_GNU_TYPE)-gcc
-endif
-
-export DH_VERBOSE = 1
-
-export DEB_BUILD_MAINT_OPTIONS = hardening=+bindnow
-
-documentation: configure
-	make man
-
-configure:
-	make ${DEFCONFIG}
-
-build: documentation configure
-	dh $@
-
-%:
-	echo $@
-	dh $@
-
-override_dh_installchangelogs:
-	true
-
-override_dh_installdocs:
-	true
diff --git a/recipes-core/swupdate/files/debian/swupdate.examples b/recipes-core/swupdate/files/debian/swupdate.examples
deleted file mode 100644
index c257b75..0000000
--- a/recipes-core/swupdate/files/debian/swupdate.examples
+++ /dev/null
@@ -1,2 +0,0 @@
-examples/configuration
-examples/description
diff --git a/recipes-core/swupdate/files/debian/swupdate.install b/recipes-core/swupdate/files/debian/swupdate.install
deleted file mode 100644
index 8957cc6..0000000
--- a/recipes-core/swupdate/files/debian/swupdate.install
+++ /dev/null
@@ -1,2 +0,0 @@
-swupdate usr/bin
-swupdate.cfg /etc
diff --git a/recipes-core/swupdate/files/debian/swupdate.manpages b/recipes-core/swupdate/files/debian/swupdate.manpages
deleted file mode 100644
index c3438e0..0000000
--- a/recipes-core/swupdate/files/debian/swupdate.manpages
+++ /dev/null
@@ -1,5 +0,0 @@
-doc/build/man/swupdate.1
-doc/build/man/client.1
-doc/build/man/sendtohawkbit.1
-doc/build/man/hawkbitcfg.1
-doc/build/man/progress.1
diff --git a/recipes-core/swupdate/files/debian/swupdate.tmpfile b/recipes-core/swupdate/files/debian/swupdate.tmpfile
deleted file mode 100644
index 4743672..0000000
--- a/recipes-core/swupdate/files/debian/swupdate.tmpfile
+++ /dev/null
@@ -1,2 +0,0 @@
-X /tmp/datadst
-X /tmp/scripts
diff --git a/recipes-core/swupdate/files/debian/watch b/recipes-core/swupdate/files/debian/watch
deleted file mode 100644
index bc4c53e..0000000
--- a/recipes-core/swupdate/files/debian/watch
+++ /dev/null
@@ -1,12 +0,0 @@
-# Example watch control file for uscan
-# Rename this file to "watch" and then you can run the "uscan" command
-# to check for upstream updates and more.
-# See uscan(1) for format
-
-# Compulsory line, this is a version 4 file
-version=4
-
-# GitHub hosted projects
-opts="filenamemangle="s%(?:.*?)?v?(\d[\d.]*)\.tar\.gz%<project>-$1.tar.gz%" \
-   https://github.com/<user>/swupdate/tags \
-   (?:.*?/)?v?(\d[\d.]*)\.tar\.gz debian uupdate
diff --git a/recipes-core/swupdate/files/postinst b/recipes-core/swupdate/files/postinst
deleted file mode 100644
index f15ac10..0000000
--- a/recipes-core/swupdate/files/postinst
+++ /dev/null
@@ -1,2 +0,0 @@
-#!/bin/sh
-deb-systemd-helper enable swupdate.socket || true
diff --git a/recipes-core/swupdate/files/swupdate.cfg b/recipes-core/swupdate/files/swupdate.cfg
deleted file mode 100644
index e0222f1..0000000
--- a/recipes-core/swupdate/files/swupdate.cfg
+++ /dev/null
@@ -1,6 +0,0 @@
-globals :
-{
-    verbose = true;
-    loglevel = 10;
-    syslog = false;
-};
diff --git a/recipes-core/swupdate/files/swupdate.service.example b/recipes-core/swupdate/files/swupdate.service.example
deleted file mode 100644
index d0b821e..0000000
--- a/recipes-core/swupdate/files/swupdate.service.example
+++ /dev/null
@@ -1,11 +0,0 @@
-[Unit]
-Description=SWUpdate daemon
-Documentation=https://github.com/sbabic/swupdate
-
-[Service]
-Type=simple
-ExecStart=/usr/bin/swupdate -f /etc/swupdate.cfg
-KillMode=mixed
-
-[Install]
-WantedBy=multi-user.target
diff --git a/recipes-core/swupdate/files/swupdate.socket.example b/recipes-core/swupdate/files/swupdate.socket.example
deleted file mode 100644
index 2b75671..0000000
--- a/recipes-core/swupdate/files/swupdate.socket.example
+++ /dev/null
@@ -1,11 +0,0 @@
-[Unit]
-Description=SWUpdate socket listener
-Documentation=https://github.com/sbabic/swupdate
-Documentation=https://sbabic.github.io/swupdate
-
-[Socket]
-ListenStream=/tmp/sockinstctrl
-ListenStream=/tmp/swupdateprog
-
-[Install]
-WantedBy=sockets.target
diff --git a/recipes-core/swupdate/files/swupdate.socket.tmpl b/recipes-core/swupdate/files/swupdate.socket.tmpl
deleted file mode 100644
index 8e7fc1d..0000000
--- a/recipes-core/swupdate/files/swupdate.socket.tmpl
+++ /dev/null
@@ -1,13 +0,0 @@
-[Unit]
-Description=SWUpdate socket listener
-Documentation=https://github.com/sbabic/swupdate
-Documentation=https://sbabic.github.io/swupdate
-
-[Socket]
-SocketUser=${SWUPDATE_SOCKET_OWNER}
-SocketGroup=root
-ListenStream=/tmp/sockinstctrl
-ListenStream=/tmp/swupdateprog
-
-[Install]
-WantedBy=sockets.target
diff --git a/recipes-core/swupdate/files/swupdate_defconfig b/recipes-core/swupdate/files/swupdate_defconfig
deleted file mode 100644
index 9ae7cb5..0000000
--- a/recipes-core/swupdate/files/swupdate_defconfig
+++ /dev/null
@@ -1,83 +0,0 @@
-#
-# Automatically generated file; DO NOT EDIT.
-# Swupdate Configuration
-#
-CONFIG_HAVE_DOT_CONFIG=y
-
-#
-# Swupdate Settings
-#
-
-#
-# General Configuration
-#
-# CONFIG_CURL is not set
-# CONFIG_CURL_SSL is not set
-CONFIG_SYSTEMD=y
-CONFIG_SCRIPTS=y
-# CONFIG_HW_COMPATIBILITY is not set
-CONFIG_SW_VERSIONS_FILE="/etc/sw-versions"
-
-#
-# Socket Paths
-#
-CONFIG_SOCKET_CTRL_PATH="/tmp/sockinstctrl"
-CONFIG_SOCKET_PROGRESS_PATH="/tmp/swupdateprog"
-CONFIG_SOCKET_REMOTE_HANDLER_DIRECTORY="/tmp/"
-# CONFIG_MTD is not set
-# CONFIG_LUA is not set
-# CONFIG_LUAPKG is not set
-# CONFIG_FEATURE_SYSLOG is not set
-
-#
-# Build Options
-#
-CONFIG_CROSS_COMPILE=""
-CONFIG_SYSROOT=""
-CONFIG_EXTRA_CFLAGS=""
-CONFIG_EXTRA_LDFLAGS=""
-CONFIG_EXTRA_LDLIBS=""
-
-#
-# Debugging Options
-#
-# CONFIG_DEBUG is not set
-# CONFIG_WERROR is not set
-# CONFIG_NOCLEANUP is not set
-# CONFIG_BOOTLOADER_EBG is not set
-# CONFIG_UBOOT is not set
-# CONFIG_BOOTLOADER_NONE is not set
-# CONFIG_BOOTLOADER_GRUB is not set
-# CONFIG_DOWNLOAD is not set
-# CONFIG_DOWNLOAD_SSL is not set
-# CONFIG_CHANNEL_CURL is not set
-# CONFIG_HASH_VERIFY=y
-# CONFIG_SIGNED_IMAGES is not set
-# CONFIG_ENCRYPTED_IMAGES is not set
-# CONFIG_SURICATTA is not set
-# CONFIG_WEBSERVER is not set
-CONFIG_GUNZIP=y
-
-#
-# Parser Features
-#
-CONFIG_LIBCONFIG=y
-CONFIG_PARSERROOT=""
-# CONFIG_JSON is not set
-# CONFIG_LUAEXTERNAL is not set
-# CONFIG_SETEXTPARSERNAME is not set
-# CONFIG_SETSWDESCRIPTION is not set
-
-#
-# Image Handlers
-#
-CONFIG_RAW=y
-# CONFIG_LUASCRIPTHANDLER is not set
-# CONFIG_SHELLSCRIPTHANDLER is not set
-# CONFIG_HANDLER_IN_LUA is not set
-# CONFIG_EMBEDDED_LUA_HANDLER is not set
-# CONFIG_EMBEDDED_LUA_HANDLER_SOURCE is not set
-CONFIG_ARCHIVE=y
-# CONFIG_REMOTE_HANDLER is not set
-# CONFIG_SWUFORWARDER_HANDLER is not set
-# CONFIG_BOOTLOADERHANDLER is not set
diff --git a/recipes-core/swupdate/files/swupdate_defconfig_efibootguard.snippet b/recipes-core/swupdate/files/swupdate_defconfig_efibootguard.snippet
deleted file mode 100644
index 8e3688c..0000000
--- a/recipes-core/swupdate/files/swupdate_defconfig_efibootguard.snippet
+++ /dev/null
@@ -1,3 +0,0 @@
-CONFIG_BOOTLOADER_NONE=n
-CONFIG_BOOTLOADER_EBG=y
-CONFIG_BOOTLOADERHANDLER=y
diff --git a/recipes-core/swupdate/files/swupdate_defconfig_lua.snippet b/recipes-core/swupdate/files/swupdate_defconfig_lua.snippet
deleted file mode 100644
index b39f9df..0000000
--- a/recipes-core/swupdate/files/swupdate_defconfig_lua.snippet
+++ /dev/null
@@ -1,2 +0,0 @@
-CONFIG_LUA=y
-CONFIG_LUAPKG="lua53"
diff --git a/recipes-core/swupdate/files/swupdate_defconfig_luahandler.snippet b/recipes-core/swupdate/files/swupdate_defconfig_luahandler.snippet
deleted file mode 100644
index b4a2de8..0000000
--- a/recipes-core/swupdate/files/swupdate_defconfig_luahandler.snippet
+++ /dev/null
@@ -1,4 +0,0 @@
-CONFIG_LUASCRIPTHANDLER=y
-CONFIG_HANDLER_IN_LUA=y
-CONFIG_EMBEDDED_LUA_HANDLER=y
-CONFIG_EMBEDDED_LUA_HANDLER_SOURCE="swupdate_handlers.lua"
diff --git a/recipes-core/swupdate/files/swupdate_defconfig_mtd.snippet b/recipes-core/swupdate/files/swupdate_defconfig_mtd.snippet
deleted file mode 100644
index eab98dd..0000000
--- a/recipes-core/swupdate/files/swupdate_defconfig_mtd.snippet
+++ /dev/null
@@ -1 +0,0 @@
-CONFIG_MTD=y
diff --git a/recipes-core/swupdate/files/swupdate_defconfig_u-boot.snippet b/recipes-core/swupdate/files/swupdate_defconfig_u-boot.snippet
deleted file mode 100644
index 6b5832a..0000000
--- a/recipes-core/swupdate/files/swupdate_defconfig_u-boot.snippet
+++ /dev/null
@@ -1,3 +0,0 @@
-CONFIG_UBOOT=y
-CONFIG_UBOOT_FWENV="/etc/fw_env.config"
-CONFIG_BOOTLOADERHANDLER=y
diff --git a/recipes-core/swupdate/files/swupdate_defconfig_ubi.snippet b/recipes-core/swupdate/files/swupdate_defconfig_ubi.snippet
deleted file mode 100644
index d1c7732..0000000
--- a/recipes-core/swupdate/files/swupdate_defconfig_ubi.snippet
+++ /dev/null
@@ -1,6 +0,0 @@
-CONFIG_UBIVOL=y
-CONFIG_UBIATTACH=y
-CONFIG_UBIBLACKLIST=""
-CONFIG_UBIWHITELIST=""
-CONFIG_UBIVIDOFFSET=0
-CONFIG_CFI=y
diff --git a/recipes-core/swupdate/swupdate.bb b/recipes-core/swupdate/swupdate.bb
deleted file mode 100644
index a29a797..0000000
--- a/recipes-core/swupdate/swupdate.bb
+++ /dev/null
@@ -1,48 +0,0 @@
-#
-# CIP Core, generic profile
-#
-# Copyright (c) Siemens AG, 2020
-#
-# Authors:
-#  Quirin Gylstorff <quirin.gylstorff@siemens.com>
-#
-# SPDX-License-Identifier: MIT
-
-DESCRIPTION = "swupdate utility for software updates"
-HOMEPAGE= "https://github.com/sbabic/swupdate"
-LICENSE = "GPL-2.0"
-LIC_FILES_CHKSUM = "file://${LAYERDIR_isar}/licenses/COPYING.GPLv2;md5=751419260aa954499f7abaabaa882bbe"
-
-SRC_URI = "git://github.com/sbabic/swupdate.git;branch=master;protocol=https"
-
-SRCREV = "47a1246435fdb78fba15cc969596994130412956"
-PV = "2021.4-git+isar"
-
-DEFCONFIG := "swupdate_defconfig"
-
-SRC_URI += "file://debian \
-            file://${DEFCONFIG} \
-            file://${PN}.cfg"
-
-DEBIAN_DEPENDS = "${shlibs:Depends}, ${misc:Depends}"
-
-inherit dpkg
-inherit swupdate-config
-
-KFEATURES += "luahandler"
-
-S = "${WORKDIR}/git"
-
-TEMPLATE_FILES = "debian/changelog.tmpl debian/control.tmpl debian/rules.tmpl"
-TEMPLATE_VARS += "BUILD_DEB_DEPENDS DEFCONFIG DEBIAN_DEPENDS"
-
-do_prepare_build() {
-    cp -R ${WORKDIR}/debian ${S}
-
-    install -m 0644 ${WORKDIR}/${PN}.cfg ${S}/swupdate.cfg
-    install -m 0644 ${WORKDIR}/${DEFCONFIG}.gen ${S}/configs/${DEFCONFIG}
-
-    if ! grep -q "configs/${DEFCONFIG}" ${S}/.gitignore; then
-        echo "configs/${DEFCONFIG}" >> ${S}/.gitignore
-    fi
-}
-- 
2.30.2


[-- Attachment #2: Type: text/plain, Size: 429 bytes --]


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#6790): https://lists.cip-project.org/g/cip-dev/message/6790
Mute This Topic: https://lists.cip-project.org/mt/86094389/4520388
Group Owner: cip-dev+owner@lists.cip-project.org
Unsubscribe: https://lists.cip-project.org/g/cip-dev/leave/10495289/4520388/727948398/xyzzy [cip-dev@archiver.kernel.org]
-=-=-=-=-=-=-=-=-=-=-=-


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* Re: [cip-dev][isar-cip-core][PATCH 1/4] swupdate: Move handler to own recipe
@ 2021-10-06 17:59     ` Jan Kiszka
  0 siblings, 0 replies; 13+ messages in thread
From: Jan Kiszka @ 2021-10-06 17:59 UTC (permalink / raw)
  To: Q. Gylstorff, cip-dev

[-- Attachment #1: Type: text/plain, Size: 7002 bytes --]

On 05.10.21 16:13, Q. Gylstorff wrote:
> From: Quirin Gylstorff <quirin.gylstorff@siemens.com>
> 
> Split the SWUpdate lua handler into a seperate recipe in
> preparation for using the Debian provided SWUpdate package.
> 
> Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
> ---
>  classes/swupdate-config.bbclass               |  8 ----
>  kas/opt/swupdate.yml                          |  1 +
>  .../swupdate.handler.efibootguard.ini         |  0
>  .../files/swupdate.handler.efibootguard.ini   |  0
>  .../swupdate-handlers_0.1.bb                  | 37 +++++++++++++++++++
>  recipes-core/swupdate/swupdate.bb             | 13 -------
>  6 files changed, 38 insertions(+), 21 deletions(-)
>  rename recipes-core/{swupdate => swupdate-handlers}/files/secureboot/swupdate.handler.efibootguard.ini (100%)
>  rename recipes-core/{swupdate => swupdate-handlers}/files/swupdate.handler.efibootguard.ini (100%)
>  create mode 100644 recipes-core/swupdate-handlers/swupdate-handlers_0.1.bb
> 
> diff --git a/classes/swupdate-config.bbclass b/classes/swupdate-config.bbclass
> index e4879c7..1d57ce1 100644
> --- a/classes/swupdate-config.bbclass
> +++ b/classes/swupdate-config.bbclass
> @@ -17,14 +17,6 @@ BUILD_DEB_DEPENDS = " \
>      zlib1g-dev, debhelper, libconfig-dev, libarchive-dev, \
>      python-sphinx:native, dh-systemd, libsystemd-dev, libssl-dev, pkg-config"
>  
> -SRC_URI += " ${@ 'git://gitlab.com/cip-project/cip-sw-updates/swupdate-handler-roundrobin.git;protocol=https;destsuffix=swupdate-handler-roundrobin;name=swupdate-handler-roundrobin;nobranch=1' \
> -    if d.getVar('SWUPDATE_USE_ROUND_ROBIN_HANDLER_REPO') == '1' else '' \
> -    }"
> -SRCREV_swupdate-handler-roundrobin ?= "6f561f136fdbe51d2e9066b934dfcb06b94c6624"
> -
> -SWUPDATE_USE_ROUND_ROBIN_HANDLER_REPO ?= "1"
> -SWUPDATE_LUASCRIPT ?= "swupdate-handler-roundrobin/swupdate_handlers_roundrobin.lua"
> -
>  KFEATURE_lua = ""
>  KFEATURE_lua[BUILD_DEB_DEPENDS] = "liblua5.3-dev"
>  KFEATURE_lua[KCONFIG_SNIPPETS] = "file://swupdate_defconfig_lua.snippet"
> diff --git a/kas/opt/swupdate.yml b/kas/opt/swupdate.yml
> index bd0f6e4..af839f0 100644
> --- a/kas/opt/swupdate.yml
> +++ b/kas/opt/swupdate.yml
> @@ -17,6 +17,7 @@ header:
>  local_conf_header:
>    swupdate: |
>      IMAGE_INSTALL_append = " swupdate"
> +    IMAGE_INSTALL_append = " swupdate-handlers"
>  
>    wic-swu: |
>      IMAGE_TYPE = "wic-swu-img"
> diff --git a/recipes-core/swupdate/files/secureboot/swupdate.handler.efibootguard.ini b/recipes-core/swupdate-handlers/files/secureboot/swupdate.handler.efibootguard.ini
> similarity index 100%
> rename from recipes-core/swupdate/files/secureboot/swupdate.handler.efibootguard.ini
> rename to recipes-core/swupdate-handlers/files/secureboot/swupdate.handler.efibootguard.ini
> diff --git a/recipes-core/swupdate/files/swupdate.handler.efibootguard.ini b/recipes-core/swupdate-handlers/files/swupdate.handler.efibootguard.ini
> similarity index 100%
> rename from recipes-core/swupdate/files/swupdate.handler.efibootguard.ini
> rename to recipes-core/swupdate-handlers/files/swupdate.handler.efibootguard.ini
> diff --git a/recipes-core/swupdate-handlers/swupdate-handlers_0.1.bb b/recipes-core/swupdate-handlers/swupdate-handlers_0.1.bb
> new file mode 100644
> index 0000000..b6cb30d
> --- /dev/null
> +++ b/recipes-core/swupdate-handlers/swupdate-handlers_0.1.bb

Why handlers? Can the recipe handle multiple handlers? As far as I read
the recipe, it can't.

> @@ -0,0 +1,37 @@
> +#
> +# CIP Core, generic profile
> +#
> +# Copyright (c) Siemens AG, 2021
> +#
> +# Authors:
> +#  Quirin Gylstorff <quirin.gylstorff@siemens.com>
> +#
> +# SPDX-License-Identifier: MIT
> +
> +inherit dpkg-raw
> +
> +DEPENDS = "swupdate"
> +DEBIAN_DEPENDS = "swupdate"
> +
> +SRC_URI += " ${@ 'git://gitlab.com/cip-project/cip-sw-updates/swupdate-handler-roundrobin.git;protocol=https;destsuffix=swupdate-handler-roundrobin;name=swupdate-handler-roundrobin;nobranch=1' \
> +    if d.getVar('SWUPDATE_USE_ROUND_ROBIN_HANDLER_REPO') == '1' else '' \
> +    }"
> +SRCREV_swupdate-handler-roundrobin ?= "6f561f136fdbe51d2e9066b934dfcb06b94c6624"
> +
> +SWUPDATE_USE_ROUND_ROBIN_HANDLER_REPO ?= "1"
> +SWUPDATE_LUASCRIPT ?= "swupdate-handler-roundrobin/swupdate_handlers_roundrobin.lua"
> +
> +

One linefeed too much.

> +SWUPDATE_ROUND_ROBIN_HANDLER_CONFIG ?= "swupdate.handler.${SWUPDATE_BOOTLOADER}.ini"
> +SRC_URI += "${@('file://' + d.getVar('SWUPDATE_ROUND_ROBIN_HANDLER_CONFIG')) if d.getVar('SWUPDATE_BOOTLOADER') else ''}"
> +
> +do_install[cleandirs] = "${D}/etc \
> +                         ${D}/usr/share/lua/5.3"
> +do_install() {
> +    if [ -e ${WORKDIR}/${SWUPDATE_LUASCRIPT} ]; then
> +        install -m 0644 ${WORKDIR}/${SWUPDATE_LUASCRIPT} ${D}/usr/share/lua/5.3/swupdate_handlers.lua
> +    fi
> +    if [ -e ${WORKDIR}/${SWUPDATE_ROUND_ROBIN_HANDLER_CONFIG} ]; then
> +       install -m 0644 ${WORKDIR}/${SWUPDATE_ROUND_ROBIN_HANDLER_CONFIG} ${D}/etc/swupdate.handler.ini
> +    fi

I wonder if we shouldn't make this recipe "swupdate-handler-roundrobin",
maybe add generic PROVIDES = "swupdate-handler" and remove the
configurability. Or is there really that much to reuse for a different
handler? That could still be moved into a swupdate-handler.inc then. Are
we aware of any alternative handler in some (likely internal) layer that
could act as check for reusability?

> +}
> \ No newline at end of file
    ^^^^^^^^^^^^^^^^^^^^^^^^^

> diff --git a/recipes-core/swupdate/swupdate.bb b/recipes-core/swupdate/swupdate.bb
> index 8bef9ab..a29a797 100644
> --- a/recipes-core/swupdate/swupdate.bb
> +++ b/recipes-core/swupdate/swupdate.bb
> @@ -29,8 +29,6 @@ DEBIAN_DEPENDS = "${shlibs:Depends}, ${misc:Depends}"
>  inherit dpkg
>  inherit swupdate-config
>  
> -SWUPDATE_ROUND_ROBIN_HANDLER_CONFIG ?= "swupdate.handler.${SWUPDATE_BOOTLOADER}.ini"
> -SRC_URI += "${@('file://' + d.getVar('SWUPDATE_ROUND_ROBIN_HANDLER_CONFIG')) if d.getVar('SWUPDATE_BOOTLOADER') else ''}"
>  KFEATURES += "luahandler"
>  
>  S = "${WORKDIR}/git"
> @@ -47,15 +45,4 @@ do_prepare_build() {
>      if ! grep -q "configs/${DEFCONFIG}" ${S}/.gitignore; then
>          echo "configs/${DEFCONFIG}" >> ${S}/.gitignore
>      fi
> -    # luahandler
> -    if [ -e ${WORKDIR}/${SWUPDATE_LUASCRIPT} ]; then
> -        install -m 0644 ${WORKDIR}/${SWUPDATE_LUASCRIPT} ${S}/swupdate_handlers.lua
> -    fi
> -    if [ -e ${WORKDIR}/swupdate.handler.${SWUPDATE_BOOTLOADER}.ini ]; then
> -       install -m 0644 ${WORKDIR}/swupdate.handler.${SWUPDATE_BOOTLOADER}.ini ${S}/swupdate.handler.ini
> -       echo "swupdate.handler.ini etc/" >> ${S}/debian/swupdate.install
> -    elif [ -e ${WORKDIR}/${SWUPDATE_ROUND_ROBIN_HANDLER_CONFIG} ]; then
> -       install -m 0644 ${WORKDIR}/${SWUPDATE_ROUND_ROBIN_HANDLER_CONFIG} ${S}/swupdate.handler.ini
> -       echo "swupdate.handler.ini etc/" >> ${S}/debian/swupdate.install
> -    fi
>  }
> 

Jan

-- 
Siemens AG, T RDA IOT
Corporate Competence Center Embedded Linux

[-- Attachment #2: Type: text/plain, Size: 429 bytes --]


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#6796): https://lists.cip-project.org/g/cip-dev/message/6796
Mute This Topic: https://lists.cip-project.org/mt/86094386/4520388
Group Owner: cip-dev+owner@lists.cip-project.org
Unsubscribe: https://lists.cip-project.org/g/cip-dev/leave/10495289/4520388/727948398/xyzzy [cip-dev@archiver.kernel.org]
-=-=-=-=-=-=-=-=-=-=-=-


^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [cip-dev][isar-cip-core][PATCH 1/4] swupdate: Move handler to own recipe
@ 2021-10-06 17:59     ` Jan Kiszka
  0 siblings, 0 replies; 13+ messages in thread
From: Jan Kiszka @ 2021-10-06 17:59 UTC (permalink / raw)
  To: Q. Gylstorff, cip-dev

On 05.10.21 16:13, Q. Gylstorff wrote:
> From: Quirin Gylstorff <quirin.gylstorff@siemens.com>
> 
> Split the SWUpdate lua handler into a seperate recipe in
> preparation for using the Debian provided SWUpdate package.
> 
> Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
> ---
>  classes/swupdate-config.bbclass               |  8 ----
>  kas/opt/swupdate.yml                          |  1 +
>  .../swupdate.handler.efibootguard.ini         |  0
>  .../files/swupdate.handler.efibootguard.ini   |  0
>  .../swupdate-handlers_0.1.bb                  | 37 +++++++++++++++++++
>  recipes-core/swupdate/swupdate.bb             | 13 -------
>  6 files changed, 38 insertions(+), 21 deletions(-)
>  rename recipes-core/{swupdate => swupdate-handlers}/files/secureboot/swupdate.handler.efibootguard.ini (100%)
>  rename recipes-core/{swupdate => swupdate-handlers}/files/swupdate.handler.efibootguard.ini (100%)
>  create mode 100644 recipes-core/swupdate-handlers/swupdate-handlers_0.1.bb
> 
> diff --git a/classes/swupdate-config.bbclass b/classes/swupdate-config.bbclass
> index e4879c7..1d57ce1 100644
> --- a/classes/swupdate-config.bbclass
> +++ b/classes/swupdate-config.bbclass
> @@ -17,14 +17,6 @@ BUILD_DEB_DEPENDS = " \
>      zlib1g-dev, debhelper, libconfig-dev, libarchive-dev, \
>      python-sphinx:native, dh-systemd, libsystemd-dev, libssl-dev, pkg-config"
>  
> -SRC_URI += " ${@ 'git://gitlab.com/cip-project/cip-sw-updates/swupdate-handler-roundrobin.git;protocol=https;destsuffix=swupdate-handler-roundrobin;name=swupdate-handler-roundrobin;nobranch=1' \
> -    if d.getVar('SWUPDATE_USE_ROUND_ROBIN_HANDLER_REPO') == '1' else '' \
> -    }"
> -SRCREV_swupdate-handler-roundrobin ?= "6f561f136fdbe51d2e9066b934dfcb06b94c6624"
> -
> -SWUPDATE_USE_ROUND_ROBIN_HANDLER_REPO ?= "1"
> -SWUPDATE_LUASCRIPT ?= "swupdate-handler-roundrobin/swupdate_handlers_roundrobin.lua"
> -
>  KFEATURE_lua = ""
>  KFEATURE_lua[BUILD_DEB_DEPENDS] = "liblua5.3-dev"
>  KFEATURE_lua[KCONFIG_SNIPPETS] = "file://swupdate_defconfig_lua.snippet"
> diff --git a/kas/opt/swupdate.yml b/kas/opt/swupdate.yml
> index bd0f6e4..af839f0 100644
> --- a/kas/opt/swupdate.yml
> +++ b/kas/opt/swupdate.yml
> @@ -17,6 +17,7 @@ header:
>  local_conf_header:
>    swupdate: |
>      IMAGE_INSTALL_append = " swupdate"
> +    IMAGE_INSTALL_append = " swupdate-handlers"
>  
>    wic-swu: |
>      IMAGE_TYPE = "wic-swu-img"
> diff --git a/recipes-core/swupdate/files/secureboot/swupdate.handler.efibootguard.ini b/recipes-core/swupdate-handlers/files/secureboot/swupdate.handler.efibootguard.ini
> similarity index 100%
> rename from recipes-core/swupdate/files/secureboot/swupdate.handler.efibootguard.ini
> rename to recipes-core/swupdate-handlers/files/secureboot/swupdate.handler.efibootguard.ini
> diff --git a/recipes-core/swupdate/files/swupdate.handler.efibootguard.ini b/recipes-core/swupdate-handlers/files/swupdate.handler.efibootguard.ini
> similarity index 100%
> rename from recipes-core/swupdate/files/swupdate.handler.efibootguard.ini
> rename to recipes-core/swupdate-handlers/files/swupdate.handler.efibootguard.ini
> diff --git a/recipes-core/swupdate-handlers/swupdate-handlers_0.1.bb b/recipes-core/swupdate-handlers/swupdate-handlers_0.1.bb
> new file mode 100644
> index 0000000..b6cb30d
> --- /dev/null
> +++ b/recipes-core/swupdate-handlers/swupdate-handlers_0.1.bb

Why handlers? Can the recipe handle multiple handlers? As far as I read
the recipe, it can't.

> @@ -0,0 +1,37 @@
> +#
> +# CIP Core, generic profile
> +#
> +# Copyright (c) Siemens AG, 2021
> +#
> +# Authors:
> +#  Quirin Gylstorff <quirin.gylstorff@siemens.com>
> +#
> +# SPDX-License-Identifier: MIT
> +
> +inherit dpkg-raw
> +
> +DEPENDS = "swupdate"
> +DEBIAN_DEPENDS = "swupdate"
> +
> +SRC_URI += " ${@ 'git://gitlab.com/cip-project/cip-sw-updates/swupdate-handler-roundrobin.git;protocol=https;destsuffix=swupdate-handler-roundrobin;name=swupdate-handler-roundrobin;nobranch=1' \
> +    if d.getVar('SWUPDATE_USE_ROUND_ROBIN_HANDLER_REPO') == '1' else '' \
> +    }"
> +SRCREV_swupdate-handler-roundrobin ?= "6f561f136fdbe51d2e9066b934dfcb06b94c6624"
> +
> +SWUPDATE_USE_ROUND_ROBIN_HANDLER_REPO ?= "1"
> +SWUPDATE_LUASCRIPT ?= "swupdate-handler-roundrobin/swupdate_handlers_roundrobin.lua"
> +
> +

One linefeed too much.

> +SWUPDATE_ROUND_ROBIN_HANDLER_CONFIG ?= "swupdate.handler.${SWUPDATE_BOOTLOADER}.ini"
> +SRC_URI += "${@('file://' + d.getVar('SWUPDATE_ROUND_ROBIN_HANDLER_CONFIG')) if d.getVar('SWUPDATE_BOOTLOADER') else ''}"
> +
> +do_install[cleandirs] = "${D}/etc \
> +                         ${D}/usr/share/lua/5.3"
> +do_install() {
> +    if [ -e ${WORKDIR}/${SWUPDATE_LUASCRIPT} ]; then
> +        install -m 0644 ${WORKDIR}/${SWUPDATE_LUASCRIPT} ${D}/usr/share/lua/5.3/swupdate_handlers.lua
> +    fi
> +    if [ -e ${WORKDIR}/${SWUPDATE_ROUND_ROBIN_HANDLER_CONFIG} ]; then
> +       install -m 0644 ${WORKDIR}/${SWUPDATE_ROUND_ROBIN_HANDLER_CONFIG} ${D}/etc/swupdate.handler.ini
> +    fi

I wonder if we shouldn't make this recipe "swupdate-handler-roundrobin",
maybe add generic PROVIDES = "swupdate-handler" and remove the
configurability. Or is there really that much to reuse for a different
handler? That could still be moved into a swupdate-handler.inc then. Are
we aware of any alternative handler in some (likely internal) layer that
could act as check for reusability?

> +}
> \ No newline at end of file
    ^^^^^^^^^^^^^^^^^^^^^^^^^

> diff --git a/recipes-core/swupdate/swupdate.bb b/recipes-core/swupdate/swupdate.bb
> index 8bef9ab..a29a797 100644
> --- a/recipes-core/swupdate/swupdate.bb
> +++ b/recipes-core/swupdate/swupdate.bb
> @@ -29,8 +29,6 @@ DEBIAN_DEPENDS = "${shlibs:Depends}, ${misc:Depends}"
>  inherit dpkg
>  inherit swupdate-config
>  
> -SWUPDATE_ROUND_ROBIN_HANDLER_CONFIG ?= "swupdate.handler.${SWUPDATE_BOOTLOADER}.ini"
> -SRC_URI += "${@('file://' + d.getVar('SWUPDATE_ROUND_ROBIN_HANDLER_CONFIG')) if d.getVar('SWUPDATE_BOOTLOADER') else ''}"
>  KFEATURES += "luahandler"
>  
>  S = "${WORKDIR}/git"
> @@ -47,15 +45,4 @@ do_prepare_build() {
>      if ! grep -q "configs/${DEFCONFIG}" ${S}/.gitignore; then
>          echo "configs/${DEFCONFIG}" >> ${S}/.gitignore
>      fi
> -    # luahandler
> -    if [ -e ${WORKDIR}/${SWUPDATE_LUASCRIPT} ]; then
> -        install -m 0644 ${WORKDIR}/${SWUPDATE_LUASCRIPT} ${S}/swupdate_handlers.lua
> -    fi
> -    if [ -e ${WORKDIR}/swupdate.handler.${SWUPDATE_BOOTLOADER}.ini ]; then
> -       install -m 0644 ${WORKDIR}/swupdate.handler.${SWUPDATE_BOOTLOADER}.ini ${S}/swupdate.handler.ini
> -       echo "swupdate.handler.ini etc/" >> ${S}/debian/swupdate.install
> -    elif [ -e ${WORKDIR}/${SWUPDATE_ROUND_ROBIN_HANDLER_CONFIG} ]; then
> -       install -m 0644 ${WORKDIR}/${SWUPDATE_ROUND_ROBIN_HANDLER_CONFIG} ${S}/swupdate.handler.ini
> -       echo "swupdate.handler.ini etc/" >> ${S}/debian/swupdate.install
> -    fi
>  }
> 

Jan

-- 
Siemens AG, T RDA IOT
Corporate Competence Center Embedded Linux


^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [cip-dev][isar-cip-core][PATCH 2/4] swupdate: Use dpkg-gbp build with salsa
@ 2021-10-06 18:07     ` Jan Kiszka
  0 siblings, 0 replies; 13+ messages in thread
From: Jan Kiszka @ 2021-10-06 18:07 UTC (permalink / raw)
  To: Q. Gylstorff, cip-dev

[-- Attachment #1: Type: text/plain, Size: 27871 bytes --]

On 05.10.21 16:13, Q. Gylstorff wrote:
> From: Quirin Gylstorff <quirin.gylstorff@siemens.com>
> 
> This reduce the maintaince effort for SWUpdate in Debian 11(Bullseye)
> and later.
> 
> Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
> ---
>  conf/distro/cip-core-bullseye.conf            |  1 +
>  conf/distro/cip-core-buster.conf              |  1 +
>  ...dd-option-to-build-with-efibootguard.patch | 39 ++++++++++
>  .../0002-debian-rules-Add-CONFIG_MTD.patch    | 27 +++++++
>  ...-debian-config-Make-signing-optional.patch | 40 +++++++++++
>  ...onfig-Make-image-encryption-optional.patch | 40 +++++++++++
>  ...ules-Add-Embedded-Lua-handler-option.patch | 30 ++++++++
>  ...es-Add-option-to-disable-fs-creation.patch | 47 ++++++++++++
>  ...ules-Add-option-to-disable-webserver.patch | 42 +++++++++++
>  ...Make-CONFIG_HW_COMPATIBILTY-optional.patch | 40 +++++++++++
>  ...ules-Add-Embedded-Lua-handler-option.patch | 30 ++++++++
>  ...prepare-build-for-isar-debian-buster.patch | 72 +++++++++++++++++++
>  recipes-core/swupdate/swupdate.inc            | 54 ++++++++++++++
>  .../swupdate/swupdate_2021.04-1+debian-gbp.bb | 47 ++++++++++++
>  14 files changed, 510 insertions(+)
>  create mode 100644 recipes-core/swupdate/files/0001-debian-Add-option-to-build-with-efibootguard.patch
>  create mode 100644 recipes-core/swupdate/files/0002-debian-rules-Add-CONFIG_MTD.patch
>  create mode 100644 recipes-core/swupdate/files/0003-debian-config-Make-signing-optional.patch
>  create mode 100644 recipes-core/swupdate/files/0004-debian-config-Make-image-encryption-optional.patch
>  create mode 100644 recipes-core/swupdate/files/0005-debian-rules-Add-Embedded-Lua-handler-option.patch
>  create mode 100644 recipes-core/swupdate/files/0005-debian-rules-Add-option-to-disable-fs-creation.patch
>  create mode 100644 recipes-core/swupdate/files/0006-debian-rules-Add-option-to-disable-webserver.patch
>  create mode 100644 recipes-core/swupdate/files/0007-debian-Make-CONFIG_HW_COMPATIBILTY-optional.patch
>  create mode 100644 recipes-core/swupdate/files/0008-debian-rules-Add-Embedded-Lua-handler-option.patch
>  create mode 100644 recipes-core/swupdate/files/0009-debian-prepare-build-for-isar-debian-buster.patch
>  create mode 100644 recipes-core/swupdate/swupdate.inc
>  create mode 100644 recipes-core/swupdate/swupdate_2021.04-1+debian-gbp.bb
> 
> diff --git a/conf/distro/cip-core-bullseye.conf b/conf/distro/cip-core-bullseye.conf
> index 38014b4..9357b6c 100644
> --- a/conf/distro/cip-core-bullseye.conf
> +++ b/conf/distro/cip-core-bullseye.conf
> @@ -14,3 +14,4 @@ require cip-core-common.inc
>  
>  PREFERRED_VERSION_linux-cip ?= "4.19.%"
>  PREFERRED_VERSION_linux-cip-rt ?= "4.19.%"
> +PREFERRED_VERSION_swupdate ?= "2021.04-1+debian-gbp"
> diff --git a/conf/distro/cip-core-buster.conf b/conf/distro/cip-core-buster.conf
> index c5cb39c..61fcb41 100644
> --- a/conf/distro/cip-core-buster.conf
> +++ b/conf/distro/cip-core-buster.conf
> @@ -14,3 +14,4 @@ require cip-core-common.inc
>  
>  PREFERRED_VERSION_linux-cip ?= "4.19.%"
>  PREFERRED_VERSION_linux-cip-rt ?= "4.19.%"
> +PREFERRED_VERSION_swupdate ?= "2021.4-git+isar"
> diff --git a/recipes-core/swupdate/files/0001-debian-Add-option-to-build-with-efibootguard.patch b/recipes-core/swupdate/files/0001-debian-Add-option-to-build-with-efibootguard.patch
> new file mode 100644
> index 0000000..00f9a5f
> --- /dev/null
> +++ b/recipes-core/swupdate/files/0001-debian-Add-option-to-build-with-efibootguard.patch
> @@ -0,0 +1,39 @@
> +From fe3f090e3764e1e2625d509a56bd521bab507ce7 Mon Sep 17 00:00:00 2001
> +From: Quirin Gylstorff <quirin.gylstorff@siemens.com>
> +Date: Wed, 15 Sep 2021 12:36:09 +0200
> +Subject: [PATCH 1/9] debian: Add option to build with efibootguard
> +
> +Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
> +---
> + debian/control | 1 +
> + debian/rules   | 2 ++
> + 2 files changed, 3 insertions(+)
> +
> +diff --git a/debian/control b/debian/control
> +index 9e43eab..6031537 100644
> +--- a/debian/control
> ++++ b/debian/control
> +@@ -28,6 +28,7 @@ Build-Depends: debhelper-compat (= 13),
> +                libwebsockets-dev (>= 3.2.0) <!pkg.swupdate.bpo>,
> +                liburiparser-dev <!pkg.swupdate.bpo>,
> +                libubootenv-dev <pkg.swupdate.uboot>,
> ++               efibootguard-dev <pkg.swupdate.efibootguard>,
> +                libcmocka-dev,
> +                pkg-config,
> +                gawk,
> +diff --git a/debian/rules b/debian/rules
> +index 4b55be2..c076839 100755
> +--- a/debian/rules
> ++++ b/debian/rules
> +@@ -33,6 +33,8 @@ ifneq (,$(filter pkg.swupdate.uboot,$(DEB_BUILD_PROFILES)))
> + else ifneq (,$(filter pkg.swupdate.grub,$(DEB_BUILD_PROFILES)))
> + 	echo CONFIG_BOOTLOADER_GRUB=y                   >> configs/debian_defconfig
> + 	echo CONFIG_GRUBENV_PATH=\"/boot/grub/grubenv\" >> configs/debian_defconfig
> ++else ifneq (,$(filter pkg.swupdate.efibootguard,$(DEB_BUILD_PROFILES)))
> ++	echo CONFIG_BOOTLOADER_EBG=y                    >> configs/debian_defconfig
> + else
> + 	echo CONFIG_BOOTLOADER_NONE=y                   >> configs/debian_defconfig
> + endif
> +-- 
> +2.30.2
> +
> diff --git a/recipes-core/swupdate/files/0002-debian-rules-Add-CONFIG_MTD.patch b/recipes-core/swupdate/files/0002-debian-rules-Add-CONFIG_MTD.patch
> new file mode 100644
> index 0000000..0921aef
> --- /dev/null
> +++ b/recipes-core/swupdate/files/0002-debian-rules-Add-CONFIG_MTD.patch
> @@ -0,0 +1,27 @@
> +From 43365f98d70d83dac42913ff907a8a9dd25a4333 Mon Sep 17 00:00:00 2001
> +From: Quirin Gylstorff <quirin.gylstorff@siemens.com>
> +Date: Wed, 29 Sep 2021 11:29:57 +0200
> +Subject: [PATCH 2/9] debian/rules: Add CONFIG_MTD
> +
> +if pkg.swupdate.bpo is set CONFIG_MTD is disable but not enabled.
> +
> +Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
> +---
> + debian/rules | 1 +
> + 1 file changed, 1 insertion(+)
> +
> +diff --git a/debian/rules b/debian/rules
> +index c076839..292133b 100755
> +--- a/debian/rules
> ++++ b/debian/rules
> +@@ -20,6 +20,7 @@ endif
> + override_dh_auto_configure:
> + 	cp debian/configs/defconfig  configs/debian_defconfig
> + ifeq (,$(filter pkg.swupdate.bpo,$(DEB_BUILD_PROFILES)))
> ++	echo CONFIG_MTD=y                  >> configs/debian_defconfig
> + 	echo CONFIG_SWUFORWARDER_HANDLER=y >> configs/debian_defconfig
> + 	echo CONFIG_CFI=y                  >> configs/debian_defconfig
> + 	echo CONFIG_CFIHAMMING1=y          >> configs/debian_defconfig
> +-- 
> +2.30.2
> +
> diff --git a/recipes-core/swupdate/files/0003-debian-config-Make-signing-optional.patch b/recipes-core/swupdate/files/0003-debian-config-Make-signing-optional.patch
> new file mode 100644
> index 0000000..347b316
> --- /dev/null
> +++ b/recipes-core/swupdate/files/0003-debian-config-Make-signing-optional.patch
> @@ -0,0 +1,40 @@
> +From 37f9afeeac5483f677b5be41b3d31e6557fcc146 Mon Sep 17 00:00:00 2001
> +From: Quirin Gylstorff <quirin.gylstorff@siemens.com>
> +Date: Wed, 29 Sep 2021 15:27:51 +0200
> +Subject: [PATCH 3/9] debian/config: Make signing optional
> +
> +Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
> +---
> + debian/configs/defconfig | 1 -
> + debian/rules             | 3 +++
> + 2 files changed, 3 insertions(+), 1 deletion(-)
> +
> +diff --git a/debian/configs/defconfig b/debian/configs/defconfig
> +index b38aa62..f959e44 100644
> +--- a/debian/configs/defconfig
> ++++ b/debian/configs/defconfig
> +@@ -2,7 +2,6 @@ CONFIG_SYSTEMD=y
> + CONFIG_HW_COMPATIBILITY=y
> + CONFIG_DOWNLOAD=y
> + CONFIG_DOWNLOAD_SSL=y
> +-CONFIG_SIGNED_IMAGES=y
> + CONFIG_SIGALG_CMS=y
> + CONFIG_ENCRYPTED_IMAGES=y
> + CONFIG_SURICATTA=y
> +diff --git a/debian/rules b/debian/rules
> +index 292133b..4793c84 100755
> +--- a/debian/rules
> ++++ b/debian/rules
> +@@ -39,6 +39,9 @@ else ifneq (,$(filter pkg.swupdate.efibootguard,$(DEB_BUILD_PROFILES)))
> + else
> + 	echo CONFIG_BOOTLOADER_NONE=y                   >> configs/debian_defconfig
> + endif
> ++ifeq (,$(filter pkg.swupdate.nosigning,$(DEB_BUILD_PROFILES)))
> ++	echo CONFIG_SIGNED_IMAGES=y >> configs/debian_defconfig
> ++endif
> + ifneq (,$(filter pkg.swupdate.p11,$(DEB_BUILD_PROFILES)))
> + 	echo CONFIG_PKCS11=y >> configs/debian_defconfig
> + endif
> +-- 
> +2.30.2
> +
> diff --git a/recipes-core/swupdate/files/0004-debian-config-Make-image-encryption-optional.patch b/recipes-core/swupdate/files/0004-debian-config-Make-image-encryption-optional.patch
> new file mode 100644
> index 0000000..45990f8
> --- /dev/null
> +++ b/recipes-core/swupdate/files/0004-debian-config-Make-image-encryption-optional.patch
> @@ -0,0 +1,40 @@
> +From b0cfcc9980c6daf6383c6dc51fdbe90e1c7625d5 Mon Sep 17 00:00:00 2001
> +From: Quirin Gylstorff <quirin.gylstorff@siemens.com>
> +Date: Wed, 29 Sep 2021 15:28:21 +0200
> +Subject: [PATCH 4/9] debian/config: Make image encryption optional
> +
> +Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
> +---
> + debian/configs/defconfig | 1 -
> + debian/rules             | 3 +++
> + 2 files changed, 3 insertions(+), 1 deletion(-)
> +
> +diff --git a/debian/configs/defconfig b/debian/configs/defconfig
> +index f959e44..8e1a810 100644
> +--- a/debian/configs/defconfig
> ++++ b/debian/configs/defconfig
> +@@ -3,7 +3,6 @@ CONFIG_HW_COMPATIBILITY=y
> + CONFIG_DOWNLOAD=y
> + CONFIG_DOWNLOAD_SSL=y
> + CONFIG_SIGALG_CMS=y
> +-CONFIG_ENCRYPTED_IMAGES=y
> + CONFIG_SURICATTA=y
> + CONFIG_SURICATTA_SSL=y
> + CONFIG_UPDATE_STATE_CHOICE_BOOTLOADER=y
> +diff --git a/debian/rules b/debian/rules
> +index 4793c84..6d32d50 100755
> +--- a/debian/rules
> ++++ b/debian/rules
> +@@ -42,6 +42,9 @@ endif
> + ifeq (,$(filter pkg.swupdate.nosigning,$(DEB_BUILD_PROFILES)))
> + 	echo CONFIG_SIGNED_IMAGES=y >> configs/debian_defconfig
> + endif
> ++ifeq (,$(filter pkg.swupdate.noencryption,$(DEB_BUILD_PROFILES)))
> ++	echo CONFIG_ENCRYPTED_IMAGES=y >> configs/debian_defconfig
> ++endif
> + ifneq (,$(filter pkg.swupdate.p11,$(DEB_BUILD_PROFILES)))
> + 	echo CONFIG_PKCS11=y >> configs/debian_defconfig
> + endif
> +-- 
> +2.30.2
> +
> diff --git a/recipes-core/swupdate/files/0005-debian-rules-Add-Embedded-Lua-handler-option.patch b/recipes-core/swupdate/files/0005-debian-rules-Add-Embedded-Lua-handler-option.patch
> new file mode 100644
> index 0000000..84665cd
> --- /dev/null
> +++ b/recipes-core/swupdate/files/0005-debian-rules-Add-Embedded-Lua-handler-option.patch
> @@ -0,0 +1,30 @@
> +From 0200687ad67d6e5a0e9bbdf2e8c86e3f8e717c5e Mon Sep 17 00:00:00 2001
> +From: Quirin Gylstorff <quirin.gylstorff@siemens.com>
> +Date: Wed, 29 Sep 2021 11:32:41 +0200
> +Subject: [PATCH 5/6] debian/rules: Add Embedded Lua handler option
> +
> +Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
> +---
> + debian/rules | 5 +++++
> + 1 file changed, 5 insertions(+)
> +
> +diff --git a/debian/rules b/debian/rules
> +index 69fd790..9ace348 100755
> +--- a/debian/rules
> ++++ b/debian/rules
> +@@ -52,7 +52,12 @@ ifneq (,$(LUA_VERSION))
> + 	echo CONFIG_LUAPKG=\"lua$(LUA_VERSION)\" >> configs/debian_defconfig
> + 	echo CONFIG_LUASCRIPTHANDLER=y           >> configs/debian_defconfig
> + 	echo CONFIG_HANDLER_IN_LUA=y             >> configs/debian_defconfig
> ++ifneq (,$(filter pkg.swupdate.embeddedlua,$(DEB_BUILD_PROFILES)))
> ++	echo CONFIG_EMBEDDED_LUA_HANDLER=y                              >> configs/debian_defconfig
> ++	echo CONFIG_EMBEDDED_LUA_HANDLER_SOURCE=\"/usr/share/lua/$(LUA_VERSION)/swupdate_handlers.lua\" >> configs/debian_defconfig
> + endif
> ++endif
> ++
> + 	echo CONFIG_EXTRA_CFLAGS=\"$(CFLAGS) $(CPPFLAGS)\" >> configs/debian_defconfig
> + 	echo CONFIG_EXTRA_LDFLAGS=\"$(LDFLAGS)\"           >> configs/debian_defconfig
> + 	echo CONFIG_EXTRA_LDLIBS=\"$(LDLIBS)\"             >> configs/debian_defconfig
> +-- 
> +2.30.2
> +
> diff --git a/recipes-core/swupdate/files/0005-debian-rules-Add-option-to-disable-fs-creation.patch b/recipes-core/swupdate/files/0005-debian-rules-Add-option-to-disable-fs-creation.patch
> new file mode 100644
> index 0000000..1121923
> --- /dev/null
> +++ b/recipes-core/swupdate/files/0005-debian-rules-Add-option-to-disable-fs-creation.patch
> @@ -0,0 +1,47 @@
> +From 22a96e95676123c6ce8800b9d911402704dce9e2 Mon Sep 17 00:00:00 2001
> +From: Quirin Gylstorff <quirin.gylstorff@siemens.com>
> +Date: Mon, 4 Oct 2021 17:15:56 +0200
> +Subject: [PATCH 5/9] debian/rules: Add option to disable fs creation
> +
> +Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
> +---
> + debian/configs/defconfig | 4 ----
> + debian/rules             | 7 +++++++
> + 2 files changed, 7 insertions(+), 4 deletions(-)
> +
> +diff --git a/debian/configs/defconfig b/debian/configs/defconfig
> +index 8e1a810..d011deb 100644
> +--- a/debian/configs/defconfig
> ++++ b/debian/configs/defconfig
> +@@ -9,10 +9,6 @@ CONFIG_UPDATE_STATE_CHOICE_BOOTLOADER=y
> + CONFIG_WEBSERVER=y
> + CONFIG_MONGOOSESSL=y
> + CONFIG_ZSTD=y
> +-CONFIG_DISKPART=y
> +-CONFIG_DISKFORMAT=y
> +-CONFIG_FAT_FILESYSTEM=y
> +-CONFIG_EXT_FILESYSTEM=y
> + CONFIG_UNIQUEUUID=y
> + CONFIG_RAW=y
> + CONFIG_RDIFFHANDLER=y
> +diff --git a/debian/rules b/debian/rules
> +index 6d32d50..9349c22 100755
> +--- a/debian/rules
> ++++ b/debian/rules
> +@@ -45,6 +45,13 @@ endif
> + ifeq (,$(filter pkg.swupdate.noencryption,$(DEB_BUILD_PROFILES)))
> + 	echo CONFIG_ENCRYPTED_IMAGES=y >> configs/debian_defconfig
> + endif
> ++ifeq (,$(filter pkg.swupdate.nocreatefs,$(DEB_BUILD_PROFILES)))
> ++	echo CONFIG_DISKPART=y       >> configs/debian_defconfig
> ++	echo CONFIG_DISKFORMAT=y     >> configs/debian_defconfig
> ++	echo CONFIG_FAT_FILESYSTEM=y >> configs/debian_defconfig
> ++	echo CONFIG_EXT_FILESYSTEM=y >> configs/debian_defconfig
> ++endif
> ++
> + ifneq (,$(filter pkg.swupdate.p11,$(DEB_BUILD_PROFILES)))
> + 	echo CONFIG_PKCS11=y >> configs/debian_defconfig
> + endif
> +-- 
> +2.30.2
> +
> diff --git a/recipes-core/swupdate/files/0006-debian-rules-Add-option-to-disable-webserver.patch b/recipes-core/swupdate/files/0006-debian-rules-Add-option-to-disable-webserver.patch
> new file mode 100644
> index 0000000..23a456d
> --- /dev/null
> +++ b/recipes-core/swupdate/files/0006-debian-rules-Add-option-to-disable-webserver.patch
> @@ -0,0 +1,42 @@
> +From 9caabe416aca7ca2bf1cd2d8be89cfc89cedf6cd Mon Sep 17 00:00:00 2001
> +From: Quirin Gylstorff <quirin.gylstorff@siemens.com>
> +Date: Mon, 4 Oct 2021 17:27:11 +0200
> +Subject: [PATCH 6/9] debian/rules: Add option to disable webserver
> +
> +Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
> +---
> + debian/configs/defconfig | 2 --
> + debian/rules             | 4 ++++
> + 2 files changed, 4 insertions(+), 2 deletions(-)
> +
> +diff --git a/debian/configs/defconfig b/debian/configs/defconfig
> +index d011deb..337fcce 100644
> +--- a/debian/configs/defconfig
> ++++ b/debian/configs/defconfig
> +@@ -6,8 +6,6 @@ CONFIG_SIGALG_CMS=y
> + CONFIG_SURICATTA=y
> + CONFIG_SURICATTA_SSL=y
> + CONFIG_UPDATE_STATE_CHOICE_BOOTLOADER=y
> +-CONFIG_WEBSERVER=y
> +-CONFIG_MONGOOSESSL=y
> + CONFIG_ZSTD=y
> + CONFIG_UNIQUEUUID=y
> + CONFIG_RAW=y
> +diff --git a/debian/rules b/debian/rules
> +index 9349c22..4574b18 100755
> +--- a/debian/rules
> ++++ b/debian/rules
> +@@ -39,6 +39,10 @@ else ifneq (,$(filter pkg.swupdate.efibootguard,$(DEB_BUILD_PROFILES)))
> + else
> + 	echo CONFIG_BOOTLOADER_NONE=y                   >> configs/debian_defconfig
> + endif
> ++ifeq (,$(filter pkg.swupdate.nowebserver,$(DEB_BUILD_PROFILES)))
> ++	echo CONFIG_WEBSERVER=y   >> configs/debian_defconfig
> ++	echo CONFIG_MONGOOSESSL=y >> configs/debian_defconfig
> ++endif
> + ifeq (,$(filter pkg.swupdate.nosigning,$(DEB_BUILD_PROFILES)))
> + 	echo CONFIG_SIGNED_IMAGES=y >> configs/debian_defconfig
> + endif
> +-- 
> +2.30.2
> +
> diff --git a/recipes-core/swupdate/files/0007-debian-Make-CONFIG_HW_COMPATIBILTY-optional.patch b/recipes-core/swupdate/files/0007-debian-Make-CONFIG_HW_COMPATIBILTY-optional.patch
> new file mode 100644
> index 0000000..c2d37a9
> --- /dev/null
> +++ b/recipes-core/swupdate/files/0007-debian-Make-CONFIG_HW_COMPATIBILTY-optional.patch
> @@ -0,0 +1,40 @@
> +From 538e54a36b24eb6caf49d7dca91598fa9fc86713 Mon Sep 17 00:00:00 2001
> +From: Quirin Gylstorff <quirin.gylstorff@siemens.com>
> +Date: Tue, 5 Oct 2021 10:56:25 +0200
> +Subject: [PATCH 7/9] debian: Make CONFIG_HW_COMPATIBILTY optional
> +
> +Add option for qemu.
> +
> +Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
> +---
> + debian/configs/defconfig | 1 -
> + debian/rules             | 3 +++
> + 2 files changed, 3 insertions(+), 1 deletion(-)
> +
> +diff --git a/debian/configs/defconfig b/debian/configs/defconfig
> +index 337fcce..6fc1137 100644
> +--- a/debian/configs/defconfig
> ++++ b/debian/configs/defconfig
> +@@ -1,5 +1,4 @@
> + CONFIG_SYSTEMD=y
> +-CONFIG_HW_COMPATIBILITY=y
> + CONFIG_DOWNLOAD=y
> + CONFIG_DOWNLOAD_SSL=y
> + CONFIG_SIGALG_CMS=y
> +diff --git a/debian/rules b/debian/rules
> +index 4574b18..9a4b0d4 100755
> +--- a/debian/rules
> ++++ b/debian/rules
> +@@ -39,6 +39,9 @@ else ifneq (,$(filter pkg.swupdate.efibootguard,$(DEB_BUILD_PROFILES)))
> + else
> + 	echo CONFIG_BOOTLOADER_NONE=y                   >> configs/debian_defconfig
> + endif
> ++ifneq (,$(filter pkg.swupdate.hwcompatibility,$(DEB_BUILD_PROFILES)))
> ++	echo CONFIG_HW_COMPATIBILITY=y                   >> configs/debian_defconfig
> ++endif
> + ifeq (,$(filter pkg.swupdate.nowebserver,$(DEB_BUILD_PROFILES)))
> + 	echo CONFIG_WEBSERVER=y   >> configs/debian_defconfig
> + 	echo CONFIG_MONGOOSESSL=y >> configs/debian_defconfig
> +-- 
> +2.30.2
> +
> diff --git a/recipes-core/swupdate/files/0008-debian-rules-Add-Embedded-Lua-handler-option.patch b/recipes-core/swupdate/files/0008-debian-rules-Add-Embedded-Lua-handler-option.patch
> new file mode 100644
> index 0000000..44a83c4
> --- /dev/null
> +++ b/recipes-core/swupdate/files/0008-debian-rules-Add-Embedded-Lua-handler-option.patch
> @@ -0,0 +1,30 @@
> +From c2f07b552c6d83562fed5452bc778ae0e5e19cd4 Mon Sep 17 00:00:00 2001
> +From: Quirin Gylstorff <quirin.gylstorff@siemens.com>
> +Date: Wed, 29 Sep 2021 11:32:41 +0200
> +Subject: [PATCH 8/9] debian/rules: Add Embedded Lua handler option
> +
> +Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
> +---
> + debian/rules | 5 +++++
> + 1 file changed, 5 insertions(+)
> +
> +diff --git a/debian/rules b/debian/rules
> +index 9a4b0d4..a1f73fd 100755
> +--- a/debian/rules
> ++++ b/debian/rules
> +@@ -66,7 +66,12 @@ ifneq (,$(LUA_VERSION))
> + 	echo CONFIG_LUAPKG=\"lua$(LUA_VERSION)\" >> configs/debian_defconfig
> + 	echo CONFIG_LUASCRIPTHANDLER=y           >> configs/debian_defconfig
> + 	echo CONFIG_HANDLER_IN_LUA=y             >> configs/debian_defconfig
> ++ifneq (,$(filter pkg.swupdate.embeddedlua,$(DEB_BUILD_PROFILES)))
> ++	echo CONFIG_EMBEDDED_LUA_HANDLER=y                              >> configs/debian_defconfig
> ++	echo CONFIG_EMBEDDED_LUA_HANDLER_SOURCE=\"/usr/share/lua/$(LUA_VERSION)/swupdate_handlers.lua\" >> configs/debian_defconfig
> + endif
> ++endif
> ++
> + 	echo CONFIG_EXTRA_CFLAGS=\"$(CFLAGS) $(CPPFLAGS)\" >> configs/debian_defconfig
> + 	echo CONFIG_EXTRA_LDFLAGS=\"$(LDFLAGS)\"           >> configs/debian_defconfig
> + 	echo CONFIG_EXTRA_LDLIBS=\"$(LDLIBS)\"             >> configs/debian_defconfig
> +-- 
> +2.30.2
> +
> diff --git a/recipes-core/swupdate/files/0009-debian-prepare-build-for-isar-debian-buster.patch b/recipes-core/swupdate/files/0009-debian-prepare-build-for-isar-debian-buster.patch
> new file mode 100644
> index 0000000..8462951
> --- /dev/null
> +++ b/recipes-core/swupdate/files/0009-debian-prepare-build-for-isar-debian-buster.patch
> @@ -0,0 +1,72 @@
> +From 16dd48c2282aba91f8fc1f458f7b0c06504cac19 Mon Sep 17 00:00:00 2001
> +From: Quirin Gylstorff <quirin.gylstorff@siemens.com>
> +Date: Wed, 29 Sep 2021 16:17:03 +0200
> +Subject: [PATCH 9/9] debian: prepare build for isar debian buster
> +
> +Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
> +---
> + debian/compat  |  1 +
> + debian/control | 10 +++++-----
> + debian/rules   |  4 +++-
> + 3 files changed, 9 insertions(+), 6 deletions(-)
> + create mode 100644 debian/compat
> +
> +diff --git a/debian/compat b/debian/compat
> +new file mode 100644
> +index 0000000..f599e28
> +--- /dev/null
> ++++ b/debian/compat
> +@@ -0,0 +1 @@
> ++10
> +diff --git a/debian/control b/debian/control
> +index 6031537..710cb2d 100644
> +--- a/debian/control
> ++++ b/debian/control
> +@@ -4,7 +4,7 @@ Priority: optional
> + Maintainer: Stefano Babic <sbabic@denx.de>
> + Uploaders: SZ Lin (林上智) <szlin@debian.org>,
> +            Nobuhiro Iwamatsu <iwamatsu@debian.org>
> +-Build-Depends: debhelper-compat (= 13),
> ++Build-Depends: debhelper,
> +                dh-lua:native <!nolua>,
> +                liblua5.2-dev <!nolua>,
> +                libfdisk-dev,
> +@@ -23,10 +23,10 @@ Build-Depends: debhelper-compat (= 13),
> +                libzstd-dev,
> +                libp11-kit-dev <pkg.swupdate.p11>,
> +                libwolfssl-dev <pkg.swupdate.p11>,
> +-               libmtd-dev <!pkg.swupdate.bpo>,
> +-               libubi-dev <!pkg.swupdate.bpo>,
> +-               libwebsockets-dev (>= 3.2.0) <!pkg.swupdate.bpo>,
> +-               liburiparser-dev <!pkg.swupdate.bpo>,
> ++               libmtd-dev <pkg.swupdate.mtd> <pkg.swupdate.ubi>,
> ++               libubi-dev <pkg.swupdate.ubi>,
> ++               libwebsockets-dev,
> ++               liburiparser-dev,
> +                libubootenv-dev <pkg.swupdate.uboot>,
> +                efibootguard-dev <pkg.swupdate.efibootguard>,
> +                libcmocka-dev,
> +diff --git a/debian/rules b/debian/rules
> +index a1f73fd..a2ae1ac 100755
> +--- a/debian/rules
> ++++ b/debian/rules
> +@@ -19,13 +19,15 @@ endif
> + 
> + override_dh_auto_configure:
> + 	cp debian/configs/defconfig  configs/debian_defconfig
> +-ifeq (,$(filter pkg.swupdate.bpo,$(DEB_BUILD_PROFILES)))
> ++ifneq (,$(filter pkg.swupdate.mtd,$(DEB_BUILD_PROFILES)))
> + 	echo CONFIG_MTD=y                  >> configs/debian_defconfig
> ++ifneq (,$(filter pkg.swupdate.ubi,$(DEB_BUILD_PROFILES)))
> + 	echo CONFIG_SWUFORWARDER_HANDLER=y >> configs/debian_defconfig
> + 	echo CONFIG_CFI=y                  >> configs/debian_defconfig
> + 	echo CONFIG_CFIHAMMING1=y          >> configs/debian_defconfig
> + 	echo CONFIG_UBIVOL=y               >> configs/debian_defconfig
> + 	echo CONFIG_SSBLSWITCH=y           >> configs/debian_defconfig
> ++endif
> + else
> + 	echo "# CONFIG_MTD is not set"     >> configs/debian_defconfig
> + endif
> +-- 
> +2.30.2
> +
> diff --git a/recipes-core/swupdate/swupdate.inc b/recipes-core/swupdate/swupdate.inc
> new file mode 100644
> index 0000000..a7fd662
> --- /dev/null
> +++ b/recipes-core/swupdate/swupdate.inc
> @@ -0,0 +1,54 @@
> +#
> +# CIP Core, generic profile
> +#
> +# Copyright (c) Siemens AG, 2021
> +#
> +# Authors:
> +#  Quirin Gylstorff <quirin.gylstorff@siemens.com>
> +#
> +# SPDX-License-Identifier: MIT
> +
> +DESCRIPTION = "swupdate utility for software updates"
> +HOMEPAGE= "https://github.com/sbabic/swupdate"
> +LICENSE = "GPL-2.0"
> +LIC_FILES_CHKSUM = "file://${LAYERDIR_isar}/licenses/COPYING.GPLv2;md5=751419260aa954499f7abaabaa882bbe"
> +
> +

Extra linefeed.

> +def get_bootloader_build_profile(d):
> +    bootloader = d.getVar("SWUPDATE_BOOTLOADER", True) or ""

expand=True is the default for for getVar, so you can drop the True.

> +    if bootloader == "efibootguard":
> +        return "pkg.swupdate.efibootguard"
> +    if bootloader == "u-boot":
> +        return "pkg.swupdate.uboot"
> +    return ""
> +
> +SWUPDATE_BUILD_PROFILES += "${@get_bootloader_build_profile(d)}"
> +
> +def get_bootloader_dependencies(d):
> +    bootloader = d.getVar("SWUPDATE_BOOTLOADER", True) or ""
> +    if bootloader == "efibootguard":
> +        return "efibootguard-dev"
> +    if bootloader == "u-boot":
> +        if d.getVar("U_BOOT_CONFIG_PACKAGE", True) == "1":
> +            return "libubootenv u-boot-{}-config".format(d.getVar("MACHINE", TRUE))
> +        else:
> +            return "libubootenv"
> +    return ""
> +
> +DEPENDS += "${@get_bootloader_dependencies(d)}"
> +DEPENDS += "${@bb.utils.contains('SWUPDATE_BUILD_PROFILES', 'mtd', 'mtd-utils', '', d)}"
> +
> +do_install_builddeps_prepend() {
> +    export DEB_BUILD_PROFILES="${SWUPDATE_BUILD_PROFILES}"
> +}
> +
> +dpkg_runbuild_prepend() {
> +    export DEB_BUILD_PROFILES="${SWUPDATE_BUILD_PROFILES}"
> +}
> +
> +python do_check_bootloader () {
> +    bootloader = d.getVar("SWUPDATE_BOOTLOADER", True) or "None"
> +    if not bootloader in ["efibootguard", "u-boot"]:
> +        bb.warn("swupdate: SWUPDATE_BOOTLOADER set to incompatible value: " + bootloader)
> +}
> +addtask check_bootloader before do_fetch
> diff --git a/recipes-core/swupdate/swupdate_2021.04-1+debian-gbp.bb b/recipes-core/swupdate/swupdate_2021.04-1+debian-gbp.bb
> new file mode 100644
> index 0000000..3b8da36
> --- /dev/null
> +++ b/recipes-core/swupdate/swupdate_2021.04-1+debian-gbp.bb
> @@ -0,0 +1,47 @@
> +#
> +# CIP Core, generic profile
> +#
> +# Copyright (c) Siemens AG, 2021
> +#
> +# Authors:
> +#  Quirin Gylstorff <quirin.gylstorff@siemens.com>
> +#
> +# SPDX-License-Identifier: MIT
> +
> +inherit dpkg-gbp
> +
> +include swupdate.inc
> +
> +SRC_URI = "git://salsa.debian.org/debian/swupdate.git;protocol=https;branch=debian/master"
> +SRCREV ="debian/2021.04-1"
> +
> +# add options to DEB_BUILD_PROFILES
> +SRC_URI += "file://0001-debian-Add-option-to-build-with-efibootguard.patch \
> +file://0002-debian-rules-Add-CONFIG_MTD.patch \
> +file://0003-debian-config-Make-signing-optional.patch \
> +file://0004-debian-config-Make-image-encryption-optional.patch \
> +file://0005-debian-rules-Add-option-to-disable-fs-creation.patch \
> +file://0006-debian-rules-Add-option-to-disable-webserver.patch \
> +file://0007-debian-Make-CONFIG_HW_COMPATIBILTY-optional.patch \
> +file://0008-debian-rules-Add-Embedded-Lua-handler-option.patch"

Missing indentions of the continued lines.

> +
> +# deactivate signing and encryption for simple a/b rootfs update
> +SWUPDATE_BUILD_PROFILES += "pkg.swupdate.nosigning pkg.swupdate.noencryption"
> +
> +# If the luahandler shall be embedded into the swupdate binary
> +# include the following lines.
> +# DEPENDS += "swupdate-handlers"
> +# GBP_DEPENDS += "swupdate-handlers"
> +# SWUPDATE_BUILD_PROFILES += "pkg.swupdate.embeddedlua"
> +
> +# modify for debian buster build
> +SRC_URI_append_cip-core-buster = " file://0009-debian-prepare-build-for-isar-debian-buster.patch"
> +
> +# disable documentation due to missing packages in debian buster
> +# disable create filesystem due to missing symbols in debian buster
> +# disable webserver due to missing symbols in debian buster
> +SWUPDATE_BUILD_PROFILES_append_cip-core-buster = " nodoc \
> +                                                   pkg.swupdate.nocreatefs \
> +                                                   pkg.swupdate.nowebserver "
> +# set compression to xz

Rather than writing what it does, it might make more sense to document
the reason.

> +GBP_EXTRA_OPTIONS += "--git-compression=xz"
> 

Jan

-- 
Siemens AG, T RDA IOT
Corporate Competence Center Embedded Linux

[-- Attachment #2: Type: text/plain, Size: 429 bytes --]


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#6797): https://lists.cip-project.org/g/cip-dev/message/6797
Mute This Topic: https://lists.cip-project.org/mt/86094388/4520388
Group Owner: cip-dev+owner@lists.cip-project.org
Unsubscribe: https://lists.cip-project.org/g/cip-dev/leave/10495289/4520388/727948398/xyzzy [cip-dev@archiver.kernel.org]
-=-=-=-=-=-=-=-=-=-=-=-


^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2021-10-06 18:09 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-10-05 14:13 [cip-dev][isar-cip-core][PATCH 0/4] Use SWUpdate from salsa.debian.org Q. Gylstorff
2021-10-05 14:13 ` Quirin Gylstorff
2021-10-05 14:13 ` [cip-dev][isar-cip-core][PATCH 1/4] swupdate: Move handler to own recipe Q. Gylstorff
2021-10-05 14:13   ` Quirin Gylstorff
2021-10-06 17:59   ` Jan Kiszka
2021-10-06 17:59     ` Jan Kiszka
2021-10-05 14:13 ` [cip-dev][isar-cip-core][PATCH 2/4] swupdate: Use dpkg-gbp build with salsa Q. Gylstorff
2021-10-05 14:13   ` Quirin Gylstorff
2021-10-06 18:07   ` Jan Kiszka
2021-10-06 18:07     ` Jan Kiszka
2021-10-05 14:13 ` [cip-dev][isar-cip-core][PATCH 3/4] swupdate-handler: Use same lua version as swupdate-debian-gbp Q. Gylstorff
2021-10-05 14:13   ` Quirin Gylstorff
2021-10-05 14:13 ` [cip-dev][isar-cip-core][PATCH 4/4] swupdate: remove version 2021.04+isar-git Q. Gylstorff
2021-10-05 14:13   ` Quirin Gylstorff

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.