From mboxrd@z Thu Jan 1 00:00:00 1970 Delivery-date: Fri, 21 Mar 2025 09:53:03 +0100 Received: from metis.whiteo.stw.pengutronix.de ([2a0a:edc0:2:b01:1d::104]) by lore.white.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1tvY7j-002Fyd-3B for lore@lore.pengutronix.de; Fri, 21 Mar 2025 09:53:03 +0100 Received: from localhost ([127.0.0.1] helo=metis.whiteo.stw.pengutronix.de) by metis.whiteo.stw.pengutronix.de with esmtp (Exim 4.92) (envelope-from ) id 1tvY7j-00027P-5s; Fri, 21 Mar 2025 09:53:03 +0100 To: ptxdist@pengutronix.de Date: Fri, 21 Mar 2025 09:52:42 +0100 In-Reply-To: <20250321085246.21344-1-ada@thorsis.com> References: <20250321085246.21344-1-ada@thorsis.com> MIME-Version: 1.0 Message-ID: List-Id: PTXdist Development Mailing List List-Post: From: Alexander Dahl via ptxdist Precedence: list Cc: Alexander Dahl X-Mailman-Version: 2.1.29 X-BeenThere: ptxdist@pengutronix.de List-Subscribe: , List-Unsubscribe: , List-Archive: Reply-To: ptxdist@pengutronix.de List-Help: Subject: [ptxdist] [RFC PATCH 3/7] swupdate: Introduce new package Content-Type: message/rfc822 Content-Disposition: inline Sender: "ptxdist" X-SA-Exim-Connect-IP: 127.0.0.1 X-SA-Exim-Mail-From: ptxdist-bounces@pengutronix.de X-SA-Exim-Scanned: No (on metis.whiteo.stw.pengutronix.de); SAEximRunCond expanded to false Received: from mail.thorsis.com ([217.92.40.78]) by metis.whiteo.stw.pengutronix.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1tvY7Y-00026Q-IT for ptxdist@pengutronix.de; Fri, 21 Mar 2025 09:52:53 +0100 Received: from [127.0.0.1] (localhost [127.0.0.1]) by localhost (Mailerdaemon) with ESMTPSA id 0BC171488D70 for ; Fri, 21 Mar 2025 09:52:52 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=thorsis.com; s=dkim; t=1742547172; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=ISEJRdsmAbA73fw8uwDvnae0LrePw0Nxda4dimG9MDw=; b=rcfSZKy55Iq+64baYHOzWWuT9rWw1n/zrKPBq9tlAFd4nveuVRpsaulvPymTTy6AjID61e nOlO0Ycmmk4j6kGxwDXRsS95Gy6MbVW/5N/RWyaVmxlbqdvCohlRxJwq+iIjmGF2xH+p5a W7wlQFZqn9GiwqLv22IcQXUfXZIk6ddO7YdOwDRaD8rLt+KnfufihWAu7NFx8qdGxIXXi7 cOCJjuJzIzPKBOXS+jdbxgXo+0PWpJLY1tUVjqU+zscbOay/KGrcXGGEyxMphNRu3stm6C 2drBJK0KnHimfUsVjI4NabQg24kcY2FygnnlBHe630gDaXfMTv5mUhSTdfTshw== From: Alexander Dahl To: ptxdist@pengutronix.de Date: Fri, 21 Mar 2025 09:52:42 +0100 Message-Id: <20250321085246.21344-4-ada@thorsis.com> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20250321085246.21344-1-ada@thorsis.com> References: <20250321085246.21344-1-ada@thorsis.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Last-TLS-Session-Version: TLSv1.3 X-SA-Exim-Connect-IP: 217.92.40.78 X-SA-Exim-Mail-From: ada@thorsis.com X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on metis.whiteo.stw.pengutronix.de X-Spam-Level: X-Spam-Status: No, score=-3.3 required=4.0 tests=AWL,BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_VALIDITY_RPBL_BLOCKED, RCVD_IN_VALIDITY_SAFE_BLOCKED,SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.2 Subject: [RFC PATCH 3/7] swupdate: Introduce new package X-SA-Exim-Version: 4.2.1 (built Wed, 08 May 2019 21:11:16 +0000) X-SA-Exim-Scanned: Yes (on metis.whiteo.stw.pengutronix.de) X-PTX-Original-Recipient: ptxdist@pengutronix.de Minimal solution, not considering all the options which can be set through Kconfig. Signed-off-by: Alexander Dahl --- rules/swupdate.in | 17 ++++++ rules/swupdate.make | 144 ++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 161 insertions(+) create mode 100644 rules/swupdate.in create mode 100644 rules/swupdate.make diff --git a/rules/swupdate.in b/rules/swupdate.in new file mode 100644 index 000000000..2fc4f6627 --- /dev/null +++ b/rules/swupdate.in @@ -0,0 +1,17 @@ +## SECTION=applications + +config SWUPDATE + tristate + select LIBUBOOTENV + select JSON_C + prompt "swupdate" + help + SWUpdate is a Linux Update agent with the goal to provide an + efficient and safe way to update an embedded Linux system in + field. + SWUpdate supports local and OTA updates, multiple update + strategies and it is designed with security in mind. + + https://swupdate.org/ + +# vim: ft=kconfig noet tw=72 ts=8 sw=8 diff --git a/rules/swupdate.make b/rules/swupdate.make new file mode 100644 index 000000000..3f8fa13b5 --- /dev/null +++ b/rules/swupdate.make @@ -0,0 +1,144 @@ +# -*-makefile-*- +# +# Copyright (C) 2025 by Alexander Dahl +# +# For further information about the PTXdist project and license conditions +# see the README file. +# + +# +# We provide this package +# +PACKAGES-$(PTXCONF_SWUPDATE) += swupdate + +# +# Paths and names +# +SWUPDATE_VERSION := 2024.12.1 +SWUPDATE_MD5 := ce7ef65f99840d0b0e724a6d96c17430 +SWUPDATE := swupdate-$(SWUPDATE_VERSION) +SWUPDATE_SUFFIX := tar.gz +SWUPDATE_URL := https://github.com/sbabic/swupdate/archive/refs/tags/$(SWUPDATE_VERSION).$(SWUPDATE_SUFFIX) +SWUPDATE_SOURCE := $(SRCDIR)/$(SWUPDATE).$(SWUPDATE_SUFFIX) +SWUPDATE_DIR := $(BUILDDIR)/$(SWUPDATE) +SWUPDATE_BUILD_DIR := $(SWUPDATE_DIR)-build +SWUPDATE_BUILD_OOT := KEEP +SWUPDATE_LICENSE := \ + BSD-1-Clause AND BSD-3-Clause AND CC-BY-SA-4.0 AND CC0-1.0 AND \ + GPL-2.0-only AND GPL-2.0-or-later AND ISC AND \ + LGPL-2.1-or-later AND MIT AND OFL-1.1 +SWUPDATE_LICENSE_FILES := \ + file://LICENSES/BSD-1-Clause.txt;md5=4c75b3902cf6a01969906bcae9cf8cd6 \ + file://LICENSES/BSD-3-Clause.txt;md5=4a1190eac56a9db675d58ebe86eaf50c \ + file://LICENSES/CC-BY-SA-4.0.txt;md5=7130783469368ceb248a4f03e89ea4b8 \ + file://LICENSES/CC0-1.0.txt;md5=0ceb3372c9595f0a8067e55da801e4a1 \ + file://LICENSES/GPL-2.0-only.txt;md5=4ee23c52855c222cba72583d301d2338 \ + file://LICENSES/GPL-2.0-or-later.txt;md5=261bea1168c0bdfa73232ee90df11eb6 \ + file://LICENSES/ISC.txt;md5=a6fd9988b21ff227cdfb961fd4b23ba4 \ + file://LICENSES/LGPL-2.1-or-later.txt;md5=4fbd65380cdd255951079008b364516c \ + file://LICENSES/MIT.txt;md5=838c366f69b72c5df05c96dff79b35f2 \ + file://LICENSES/OFL-1.1.txt;md5=7a75f82b54b8af9107d35c6d3cab23ac + +SWUPDATE_CONFIG := $(or \ + $(call ptx/in-path, PTXDIST_PATH_LAYERS, configs/swupdate.config), \ + $(PTXDIST_WORKSPACE)/configs/swupdate.config) + +# ---------------------------------------------------------------------------- +# Prepare +# ---------------------------------------------------------------------------- + +SWUPDATE_CONF_TOOL := kconfig + +SWUPDATE_CONF_ENV := \ + HAVE_FREEBSD=n \ + HAVE_LINUX=y \ + HAVE_LUA=n \ + HAVE_LIBCONFIG=n \ + HAVE_LIBARCHIVE=n \ + HAVE_LIBCURL=n \ + HAVE_LIBFDISK=n \ + HAVE_LIBBLKID=n \ + HAVE_LIBGPIOD=n \ + HAVE_LIBMTD=n \ + HAVE_LIBUBI=n \ + HAVE_LIBUBOOTENV=n \ + HAVE_LIBEBGENV=n \ + HAVE_LIBTEGRABOOT_TOOLS=n \ + HAVE_LIBZEROMQ=n \ + HAVE_ZLIB=n \ + HAVE_ZSTD=n \ + HAVE_LIBEXT2FS=n \ + HAVE_LIBBTRFS=n \ + HAVE_LIBSSL=n \ + HAVE_LIBSYSTEMD=n \ + HAVE_LIBCRYPTO=n \ + HAVE_WOLFSSL=n \ + HAVE_MBEDTLS=n \ + HAVE_P11KIT=n \ + HAVE_LIBWEBSOCKETS=n \ + HAVE_LIBRSYNC=n \ + HAVE_URIPARSER=n \ + HAVE_ZCK=n + +SWUPDATE_CONF_OPT := \ + -C $(SWUPDATE_DIR) \ + O=$(SWUPDATE_BUILD_DIR) \ + V=$(PTXDIST_VERBOSE) + +SWUPDATE_MAKE_ENV := \ + $(SWUPDATE_CONF_ENV) \ + CROSS_COMPILE=$(COMPILER_PREFIX) \ + CC=$(CROSS_CC) \ + LD=$(CROSS_CC) \ + SKIP_STRIP=y + +SWUPDATE_MAKE_OPT := \ + $(SWUPDATE_CONF_OPT) \ + SWU_VER="$(SWUPDATE_VERSION) (PTXdist $(PTXDIST_VERSION_FULL))" + +SWUPDATE_INSTALL_OPT := \ + $(SWUPDATE_MAKE_OPT) \ + install + +ifdef PTXCONF_SWUPDATE +$(SWUPDATE_CONFIG): + @echo + @echo "******************************************************************************" + @echo "**** Please generate a swupdate config with 'ptxdist menuconfig swupdate' ****" + @echo "******************************************************************************" + @echo + @echo + @exit 1 +endif + +# ---------------------------------------------------------------------------- +# Target-Install +# ---------------------------------------------------------------------------- + +$(STATEDIR)/swupdate.targetinstall: + @$(call targetinfo) + + @$(call install_init, swupdate) + @$(call install_fixup, swupdate,PRIORITY,optional) + @$(call install_fixup, swupdate,SECTION,base) + @$(call install_fixup, swupdate,AUTHOR,"Alexander Dahl ") + @$(call install_fixup, swupdate,DESCRIPTION,missing) + + @$(call install_lib, swupdate, 0, 0, 0644, libswupdate) + @$(call install_copy, swupdate, 0, 0, 0755, -, /usr/bin/swupdate) + @$(call install_copy, swupdate, 0, 0, 0755, -, /usr/bin/swupdate-client) + @$(call install_copy, swupdate, 0, 0, 0755, -, /usr/bin/swupdate-ipc) + @$(call install_copy, swupdate, 0, 0, 0755, -, /usr/bin/swupdate-progress) + + @$(call install_finish, swupdate) + + @$(call touch) + +# ---------------------------------------------------------------------------- +# oldconfig / menuconfig +# ---------------------------------------------------------------------------- + +$(call ptx/kconfig-targets, swupdate): $(STATEDIR)/swupdate.extract + @$(call world/kconfig, SWUPDATE, $(subst swupdate_,,$@)) + +# vim: ft=make noet tw=72 ts=8 sw=8 -- 2.39.5