ea56013409d5 jshn.sh: add json_add_fields function for adding multiple fields at once Signed-off-by: Felix Fietkau <nbd@nbd.name>
		
			
				
	
	
		
			114 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
			
		
		
	
	
			114 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
include $(TOPDIR)/rules.mk
 | 
						|
 | 
						|
PKG_NAME:=libubox
 | 
						|
PKG_RELEASE=1
 | 
						|
 | 
						|
PKG_SOURCE_PROTO:=git
 | 
						|
PKG_SOURCE_URL=$(PROJECT_GIT)/project/libubox.git
 | 
						|
PKG_MIRROR_HASH:=400bef38b8c0f382e4e595a50bb52dfbdb8da820eb80f3447b9bd7be3f5499a5
 | 
						|
PKG_SOURCE_DATE:=2022-09-27
 | 
						|
PKG_SOURCE_VERSION:=ea56013409d5823001b47a9bba6f74055a6d76a5
 | 
						|
PKG_ABI_VERSION:=$(call abi_version_str,$(PKG_SOURCE_DATE))
 | 
						|
CMAKE_INSTALL:=1
 | 
						|
 | 
						|
PKG_LICENSE:=ISC
 | 
						|
PKG_LICENSE_FILES:=
 | 
						|
 | 
						|
PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
 | 
						|
 | 
						|
PKG_BUILD_DEPENDS:=lua
 | 
						|
HOST_BUILD_DEPENDS:=libjson-c/host
 | 
						|
HOST_BUILD_PREFIX:=$(STAGING_DIR_HOST)
 | 
						|
 | 
						|
include $(INCLUDE_DIR)/package.mk
 | 
						|
include $(INCLUDE_DIR)/host-build.mk
 | 
						|
include $(INCLUDE_DIR)/cmake.mk
 | 
						|
 | 
						|
define Package/libubox
 | 
						|
  SECTION:=libs
 | 
						|
  CATEGORY:=Libraries
 | 
						|
  TITLE:=Basic utility library
 | 
						|
  ABI_VERSION:=$(PKG_ABI_VERSION)
 | 
						|
  DEPENDS:=
 | 
						|
endef
 | 
						|
 | 
						|
define Package/libblobmsg-json
 | 
						|
  SECTION:=libs
 | 
						|
  CATEGORY:=Libraries
 | 
						|
  TITLE:=blobmsg <-> json conversion library
 | 
						|
  ABI_VERSION:=$(PKG_ABI_VERSION)
 | 
						|
  DEPENDS:=+libjson-c +libubox
 | 
						|
endef
 | 
						|
 | 
						|
define Package/jshn
 | 
						|
  SECTION:=utils
 | 
						|
  CATEGORY:=Utilities
 | 
						|
  DEPENDS:=+libjson-c +libubox +libblobmsg-json
 | 
						|
  TITLE:=JSON SHell Notation
 | 
						|
endef
 | 
						|
 | 
						|
define Package/jshn/description
 | 
						|
  Library for parsing and generating JSON from shell scripts
 | 
						|
endef
 | 
						|
 | 
						|
define Package/libjson-script
 | 
						|
  SECTION:=utils
 | 
						|
  CATEGORY:=Utilities
 | 
						|
  DEPENDS:=+libubox
 | 
						|
  ABI_VERSION:=$(PKG_ABI_VERSION)
 | 
						|
  TITLE:=Minimalistic JSON based scripting engine
 | 
						|
endef
 | 
						|
 | 
						|
define Package/libubox-lua
 | 
						|
  SECTION:=libs
 | 
						|
  CATEGORY:=Libraries
 | 
						|
  DEPENDS:=+libubox +liblua
 | 
						|
  TITLE:=Lua binding for the OpenWrt Basic utility library
 | 
						|
endef
 | 
						|
 | 
						|
TARGET_CFLAGS += -I$(STAGING_DIR)/usr/include
 | 
						|
CMAKE_OPTIONS += \
 | 
						|
	-DLUAPATH=/usr/lib/lua \
 | 
						|
	-DABIVERSION="$(PKG_ABI_VERSION)"
 | 
						|
 | 
						|
define Package/libubox/install
 | 
						|
	$(INSTALL_DIR) $(1)/lib/
 | 
						|
	$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/lib/libubox.so.* $(1)/lib/
 | 
						|
endef
 | 
						|
 | 
						|
define Package/libblobmsg-json/install
 | 
						|
	$(INSTALL_DIR) $(1)/lib/
 | 
						|
	$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/lib/libblobmsg_json.so.* $(1)/lib/
 | 
						|
endef
 | 
						|
 | 
						|
define Package/jshn/install
 | 
						|
	$(INSTALL_DIR) $(1)/usr/bin $(1)/usr/share/libubox
 | 
						|
	$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/jshn $(1)/usr/bin
 | 
						|
	$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/libubox/jshn.sh $(1)/usr/share/libubox
 | 
						|
endef
 | 
						|
 | 
						|
define Package/libjson-script/install
 | 
						|
	$(INSTALL_DIR) $(1)/lib/
 | 
						|
	$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/lib/libjson_script.so.* $(1)/lib/
 | 
						|
endef
 | 
						|
 | 
						|
define Package/libubox-lua/install
 | 
						|
	$(INSTALL_DIR) $(1)/usr/lib/lua
 | 
						|
	$(CP) $(PKG_BUILD_DIR)/lua/uloop.so $(1)/usr/lib/lua/
 | 
						|
endef
 | 
						|
 | 
						|
 | 
						|
CMAKE_HOST_OPTIONS += \
 | 
						|
	-DBUILD_LUA=OFF \
 | 
						|
	-DBUILD_EXAMPLES=OFF \
 | 
						|
	-DCMAKE_SKIP_RPATH=FALSE \
 | 
						|
	-DCMAKE_MACOSX_RPATH=1 \
 | 
						|
	-DCMAKE_INSTALL_RPATH="${STAGING_DIR_HOST}/lib" \
 | 
						|
 | 
						|
$(eval $(call BuildPackage,libubox))
 | 
						|
$(eval $(call BuildPackage,libblobmsg-json))
 | 
						|
$(eval $(call BuildPackage,jshn))
 | 
						|
$(eval $(call BuildPackage,libjson-script))
 | 
						|
$(eval $(call BuildPackage,libubox-lua))
 | 
						|
$(eval $(call HostBuild))
 |