From: Alexandru Ardelean Date: Tue, 26 May 2026 11:15:12 +0000 (+0300) Subject: luafilesystem: add Lua 5.4 variant X-Git-Url: http://git.99rst.org/?a=commitdiff_plain;h=27152e6f34b97d85cc0a1355d885ca9ccd9be8d6;p=openwrt-packages.git luafilesystem: add Lua 5.4 variant Lua 5.1 is EOL and many downstream packages need 5.2+. Mirror the luasocket multi-variant pattern: keep luafilesystem (Lua 5.1, default) and add luafilesystem5.4 which builds the same source against liblua5.4 and installs to /usr/lib/lua/5.4/. Needed for the prosody 13.x upgrade (Lua 5.1 unsupported upstream). Signed-off-by: Alexandru Ardelean --- diff --git a/lang/lua/luafilesystem/Makefile b/lang/lua/luafilesystem/Makefile index bfd56146a..99098828f 100644 --- a/lang/lua/luafilesystem/Makefile +++ b/lang/lua/luafilesystem/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=luafilesystem PKG_VERSION:=1.9.0 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_LICENSE:=MIT PKG_MIRROR_HASH:=a64d8299c7c875bd2183f82f9a71f6fcc7610ee7377add0b6069fea3d7355073 @@ -19,43 +19,70 @@ PKG_SOURCE_PROTO:=git include $(INCLUDE_DIR)/package.mk -define Package/luafilesystem +define Package/luafilesystem/default SUBMENU:=Lua SECTION:=lang CATEGORY:=Languages TITLE:=LuaFileSystem URL:=https://lunarmodules.github.io/luafilesystem/ MAINTAINER:=W. Michael Petullo +endef + +define Package/luafilesystem + $(Package/luafilesystem/default) DEPENDS:=+liblua + VARIANT:=lua-51 + DEFAULT_VARIANT:=1 +endef + +define Package/luafilesystem5.4 + $(Package/luafilesystem/default) + TITLE+= (Lua 5.4) + DEPENDS:=+liblua5.4 + VARIANT:=lua-54 endef -define Package/luafilesystem/description +define Package/luafilesystem/default/description This package contains the LuaFileSystem library, a set of portable functions for directory creation, listing and deletion and for file locking. endef +Package/luafilesystem/description = $(Package/luafilesystem/default/description) +Package/luafilesystem5.4/description = $(Package/luafilesystem/default/description) + +ifeq ($(BUILD_VARIANT),lua-51) + LUA_VERSION:=5.1 + LUA_LIBNAME:=lua + LUA_INCDIR:=$(STAGING_DIR)/usr/include + LUA_INSTALL_DIR:=/usr/lib/lua +endif + +ifeq ($(BUILD_VARIANT),lua-54) + LUA_VERSION:=5.4 + LUA_LIBNAME:=lua5.4 + LUA_INCDIR:=$(STAGING_DIR)/usr/include/lua5.4 + LUA_INSTALL_DIR:=/usr/lib/lua/5.4 +endif define Build/Configure endef -TARGET_CFLAGS += $(FPIC) $(TARGET_CPPFLAGS) - -TARGET_LDFLAGS += -llua +TARGET_CFLAGS += $(FPIC) $(TARGET_CPPFLAGS) -I$(LUA_INCDIR) define Build/Compile $(MAKE) -C $(PKG_BUILD_DIR) \ $(TARGET_CONFIGURE_OPTS) \ CFLAGS="$(TARGET_CFLAGS) -std=gnu99" \ - LDFLAGS="$(TARGET_LDFLAGS)" + LDFLAGS="$(TARGET_LDFLAGS) -l$(LUA_LIBNAME)" $(TARGET_CROSS)ar r $(PKG_BUILD_DIR)/src/luafilesystem.a $(PKG_BUILD_DIR)/src/lfs.o endef define Build/InstallDev $(INSTALL_DIR) $(STAGING_DIR)/usr/include - $(INSTALL_DIR) $(STAGING_DIR)/usr/lib/lua + $(INSTALL_DIR) $(STAGING_DIR)$(LUA_INSTALL_DIR) $(INSTALL_DATA) $(PKG_BUILD_DIR)/src/lfs.h $(STAGING_DIR)/usr/include - $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/lfs.so $(STAGING_DIR)/usr/lib/lua - $(INSTALL_DATA) $(PKG_BUILD_DIR)/src/luafilesystem.a $(STAGING_DIR)/usr/lib/lua + $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/lfs.so $(STAGING_DIR)$(LUA_INSTALL_DIR) + $(INSTALL_DATA) $(PKG_BUILD_DIR)/src/luafilesystem.a $(STAGING_DIR)$(LUA_INSTALL_DIR) endef define Package/luafilesystem/install @@ -63,4 +90,10 @@ define Package/luafilesystem/install $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/lfs.so $(1)/usr/lib/lua/lfs.so endef +define Package/luafilesystem5.4/install + $(INSTALL_DIR) $(1)/usr/lib/lua/5.4 + $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/lfs.so $(1)/usr/lib/lua/5.4/lfs.so +endef + $(eval $(call BuildPackage,luafilesystem)) +$(eval $(call BuildPackage,luafilesystem5.4))