Files
packages/lang/lua/lua-cjson/Makefile
T
Jianhui Zhao b5ec1052da lua-cjson: fix Lua 5.4 module installation path
Commit 3fe92e63f5 ("lua: look for lua5.4 modules under /usr instead of
/usr/local") changed LUA_ROOT to /usr/, moving the default Lua 5.4
module search paths out of /usr/local. The Lua 5.4 variant of lua-cjson
still installed cjson.so under /usr/local/lib/lua/5.4, so require("cjson")
could no longer find it with the default search paths.

Install cjson.so under /usr/lib/lua/5.4 to match the new default search
path. Bump PKG_RELEASE to 6 so the corrected package is offered as an
upgrade. Keep the Lua 5.1 and Lua 5.3 installation paths unchanged.

Fixes: 3fe92e63f5 ("lua: look for lua5.4 modules under /usr instead of /usr/local")
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2026-10-05 12:01:29 +03:00

99 lines
2.4 KiB
Makefile

#
# Copyright (C) 2015 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
PKG_NAME:=lua-cjson
PKG_VERSION:=2.1.0
PKG_RELEASE:=6
PKG_MAINTAINER:=Dirk Chang <dirk@kooiot.com>
PKG_LICENSE:=MIT
PKG_LICENSE_FILES:=LICENSE
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://kyne.au/~mark/software/download/
PKG_HASH:=51bc69cd55931e0cba2ceae39e9efa2483f4292da3a88a1ed470eda829f6c778
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION)
HOST_BUILD_DEPENDS:=lua/host
include $(INCLUDE_DIR)/host-build.mk
include $(INCLUDE_DIR)/package.mk
include $(INCLUDE_DIR)/cmake.mk
define Package/lua-cjson/default
SUBMENU:=Lua
SECTION:=lang
CATEGORY:=Languages
TITLE:=Lua CJSON parser
URL:=https://github.com/mpx/lua-cjson
endef
define Package/lua-cjson
$(Package/lua-cjson/default)
DEPENDS+=+liblua
VARIANT:=lua-51
endef
define Package/lua-cjson-lua5.3
$(Package/lua-cjson/default)
DEPENDS+=+liblua5.3
VARIANT:=lua-53
endef
define Package/lua-cjson-lua5.4
$(Package/lua-cjson/default)
DEPENDS+=+liblua5.4
VARIANT:=lua-54
endef
define Package/lua-cjson/default/description
Lua CJSON is a fast JSON encoding/parsing module for Lua.
endef
Package/lua-cjson/description = $(Package/lua-cjson/default/description)
Package/lua-cjson-lua5.3/description = $(Package/lua-cjson/default/description)
Package/lua-cjson-lua5.4/description = $(Package/lua-cjson/default/description)
CMAKE_OPTIONS += \
-DUSE_LUA=ON
CMAKE_HOST_OPTIONS += \
-DLUA_MATH_LIBRARY=m
ifeq ($(BUILD_VARIANT),lua-53)
CMAKE_OPTIONS += -DUSE_LUA53=ON
endif
ifeq ($(BUILD_VARIANT),lua-54)
CMAKE_OPTIONS += -DUSE_LUA54=ON
endif
define Package/lua-cjson/install
$(INSTALL_DIR) $(1)/usr/lib/lua
$(INSTALL_BIN) $(PKG_BUILD_DIR)/cjson.so $(1)/usr/lib/lua/
$(INSTALL_DIR) $(1)/usr/lib/lua/cjson
$(INSTALL_DATA) $(PKG_BUILD_DIR)/lua/cjson/util.lua $(1)/usr/lib/lua/cjson
endef
define Package/lua-cjson-lua5.3/install
$(INSTALL_DIR) $(1)/usr/local/lib/lua/5.3
$(INSTALL_BIN) $(PKG_BUILD_DIR)/cjson.so $(1)/usr/local/lib/lua/5.3
endef
define Package/lua-cjson-lua5.4/install
$(INSTALL_DIR) $(1)/usr/lib/lua/5.4
$(INSTALL_BIN) $(PKG_BUILD_DIR)/cjson.so $(1)/usr/lib/lua/5.4
endef
$(eval $(call HostBuild))
$(eval $(call BuildPackage,lua-cjson))
$(eval $(call BuildPackage,lua-cjson-lua5.3))
$(eval $(call BuildPackage,lua-cjson-lua5.4))