libubox: update to latest git HEAD
[openwrt/openwrt.git] / package / libs / libubox / Makefile
1 include $(TOPDIR)/rules.mk
2
3 PKG_NAME:=libubox
4 PKG_RELEASE=1
5
6 PKG_SOURCE_PROTO:=git
7 PKG_SOURCE_URL=$(PROJECT_GIT)/project/libubox.git
8 PKG_SOURCE_DATE:=2018-06-25
9 PKG_SOURCE_VERSION:=c83a84afbef2b24f960ddeda0b5e2ab01fba6981
10 PKG_MIRROR_HASH:=9ab6dc6e300cb56ed503425c9fe060a154bcab8067da5615c0428c968947484f
11 CMAKE_INSTALL:=1
12
13 PKG_LICENSE:=ISC
14 PKG_LICENSE_FILES:=
15
16 PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
17
18 PKG_BUILD_DEPENDS:=lua
19 HOST_BUILD_DEPENDS:=libjson-c/host
20
21 include $(INCLUDE_DIR)/package.mk
22 include $(INCLUDE_DIR)/host-build.mk
23 include $(INCLUDE_DIR)/cmake.mk
24
25 define Package/libubox
26 SECTION:=libs
27 CATEGORY:=Libraries
28 TITLE:=Basic utility library
29 ABI_VERSION:=$(PKG_VERSION)
30 DEPENDS:=
31 endef
32
33 define Package/libblobmsg-json
34 SECTION:=libs
35 CATEGORY:=Libraries
36 TITLE:=blobmsg <-> json conversion library
37 DEPENDS:=+libjson-c +libubox
38 endef
39
40 define Package/jshn
41 SECTION:=utils
42 CATEGORY:=Utilities
43 DEPENDS:=+libjson-c +libubox +libblobmsg-json
44 TITLE:=JSON SHell Notation
45 endef
46
47 define Package/jshn/description
48 Library for parsing and generating JSON from shell scripts
49 endef
50
51 define Package/libjson-script
52 SECTION:=utils
53 CATEGORY:=Utilities
54 DEPENDS:=+libubox
55 TITLE:=Minimalistic JSON based scripting engine
56 endef
57
58 define Package/libubox-lua
59 SECTION:=libs
60 CATEGORY:=Libraries
61 DEPENDS:=+libubox +liblua
62 TITLE:=Lua binding for the OpenWrt Basic utility library
63 endef
64
65 TARGET_CFLAGS += -I$(STAGING_DIR)/usr/include
66 CMAKE_OPTIONS = \
67 -DLUAPATH=/usr/lib/lua
68
69 define Package/libubox/install
70 $(INSTALL_DIR) $(1)/lib/
71 $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/lib/libubox.so $(1)/lib/
72 endef
73
74 define Package/libblobmsg-json/install
75 $(INSTALL_DIR) $(1)/lib/
76 $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/lib/libblobmsg_json.so $(1)/lib/
77 endef
78
79 define Package/jshn/install
80 $(INSTALL_DIR) $(1)/usr/bin $(1)/usr/share/libubox
81 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/jshn $(1)/usr/bin
82 $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/libubox/jshn.sh $(1)/usr/share/libubox
83 endef
84
85 define Package/libjson-script/install
86 $(INSTALL_DIR) $(1)/lib/
87 $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/lib/libjson_script.so $(1)/lib/
88 endef
89
90 define Package/libubox-lua/install
91 $(INSTALL_DIR) $(1)/usr/lib/lua
92 $(CP) $(PKG_BUILD_DIR)/lua/uloop.so $(1)/usr/lib/lua/
93 endef
94
95
96 CMAKE_HOST_OPTIONS += \
97 -DBUILD_LUA=OFF \
98 -DBUILD_EXAMPLES=OFF \
99
100 $(eval $(call BuildPackage,libubox))
101 $(eval $(call BuildPackage,libblobmsg-json))
102 $(eval $(call BuildPackage,jshn))
103 $(eval $(call BuildPackage,libjson-script))
104 $(eval $(call BuildPackage,libubox-lua))
105 $(eval $(call HostBuild))