@@ -60,6 +60,18 @@ config BR2_PACKAGE_SWUPDATE_CONFIG
I you wish to use your own modified swupdate configuration
file specify the config file location with this option.
+config BR2_PACKAGE_SWUPDATE_EMBEDDED_LUA_HANDLER
+ bool "swupdate embedded lua handler"
+ depends on BR2_PACKAGE_HAS_LUAINTERPRETER
+ help
+ Enable the embedded lua handler.
+
+config BR2_PACKAGE_SWUPDATE_EMBEDDED_LUA_HANDLER_SOURCE
+ string "swupdate embedded lua handler source"
+ depends on BR2_PACKAGE_SWUPDATE_EMBEDDED_LUA_HANDLER
+ help
+ Path to the embedded lua handler source.
+
config BR2_PACKAGE_SWUPDATE_USB
bool "swupdate usb"
depends on BR2_PACKAGE_SYSTEMD
@@ -27,6 +27,12 @@ SWUPDATE_MAKE_ENV = CC="$(TARGET_CC)" LD="$(TARGET_CC)" SKIP_STRIP=y
# we don't package EFI Boot Guard/libebgenv
SWUPDATE_MAKE_ENV += HAVE_LIBEBGENV=n
+SWUPDATE_MAKE_OPTS = \
+ SWU_VER="$(SWUPDATE_VERSION) (Buildroot $(BR2_VERSION_FULL))" \
+ CROSS_COMPILE="$(TARGET_CROSS)" \
+ CONFIG_EXTRA_CFLAGS="$(TARGET_CFLAGS)" \
+ CONFIG_EXTRA_LDFLAGS="$(TARGET_LDFLAGS)"
+
# swupdate bundles its own version of mongoose (version 6.16)
ifeq ($(BR2_PACKAGE_E2FSPROGS),y)
@@ -113,6 +119,15 @@ define SWUPDATE_SET_LUA_VERSION
$(call KCONFIG_SET_OPT,CONFIG_LUAPKG,$(BR2_PACKAGE_PROVIDES_LUAINTERPRETER))
endef
SWUPDATE_MAKE_ENV += HAVE_LUA=y
+ifeq ($(BR2_PACKAGE_SWUPDATE_EMBEDDED_LUA_HANDLER),y)
+define SWUPDATE_SET_EMBEDDED_LUA
+ $(call KCONFIG_ENABLE_OPT,CONFIG_LUA)
+ $(call KCONFIG_ENABLE_OPT,CONFIG_LUASCRIPTHANDLER)
+ $(call KCONFIG_ENABLE_OPT,CONFIG_HANDLER_IN_LUA)
+ $(call KCONFIG_ENABLE_OPT,CONFIG_EMBEDDED_LUA_HANDLER)
+endef
+SWUPDATE_MAKE_OPTS += CONFIG_EMBEDDED_LUA_HANDLER_SOURCE=$(BR2_PACKAGE_SWUPDATE_EMBEDDED_LUA_HANDLER_SOURCE)
+endif
else
SWUPDATE_MAKE_ENV += HAVE_LUA=n
endif
@@ -217,14 +232,9 @@ endif
SWUPDATE_KCONFIG_FILE = $(call qstrip,$(BR2_PACKAGE_SWUPDATE_CONFIG))
SWUPDATE_KCONFIG_EDITORS = menuconfig xconfig gconfig nconfig
-SWUPDATE_MAKE_OPTS = \
- SWU_VER="$(SWUPDATE_VERSION) (Buildroot $(BR2_VERSION_FULL))" \
- CROSS_COMPILE="$(TARGET_CROSS)" \
- CONFIG_EXTRA_CFLAGS="$(TARGET_CFLAGS)" \
- CONFIG_EXTRA_LDFLAGS="$(TARGET_LDFLAGS)"
-
define SWUPDATE_KCONFIG_FIXUP_CMDS
$(SWUPDATE_SET_LUA_VERSION)
+ $(SWUPDATE_SET_EMBEDDED_LUA)
$(SWUPDATE_SET_SYSTEMD)
$(SWUPDATE_SET_WEBSERVER)
endef
We are able to configure most swupdate options using a swupdate config file, however the embedded lua source option may need to point to a buildroot generated source path. To simplify configuration of this swupdate option add a buildroot config option which will pass a source file path to swupdate when enabled in buildroot. We also need a config option to enable this feature in swupdate which the source file path config option will depend on. Signed-off-by: James Hilliard <james.hilliard1@gmail.com> --- Changes v1 -> v2: - pass path via make opts instead of kconfig --- package/swupdate/Config.in | 12 ++++++++++++ package/swupdate/swupdate.mk | 22 ++++++++++++++++------ 2 files changed, 28 insertions(+), 6 deletions(-)