source: Switch to xz for packages and tools where possible
[openwrt/staging/mkresin.git] / package / system / uci / Makefile
1 #
2 # Copyright (C) 2008-2014 OpenWrt.org
3 # Copyright (C) 2016 LEDE project
4 #
5 # This is free software, licensed under the GNU General Public License v2.
6 # See /LICENSE for more information.
7 #
8
9 include $(TOPDIR)/rules.mk
10
11 UCI_VERSION=2016-07-04
12 UCI_RELEASE=1
13
14 PKG_NAME:=uci
15 PKG_VERSION:=$(UCI_VERSION)$(if $(UCI_RELEASE),.$(UCI_RELEASE))
16 PKG_RELEASE:=1
17 PKG_REV:=e1bf4356e1b513e158e1b5049147087ed6342cfd
18
19 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
20 PKG_SOURCE_URL=$(LEDE_GIT)/project/uci.git
21 PKG_SOURCE_SUBDIR:=uci-$(PKG_VERSION)
22 PKG_SOURCE_VERSION:=$(PKG_REV)
23 PKG_SOURCE_PROTO:=git
24 PKG_MIRROR_MD5SUM:=1206aff4b41bc4aa78205c7537bc75886244c293cb5f08dc7ba3dc4def93a81c
25
26 PKG_LICENSE:=LGPL-2.1
27 PKG_LICENSE_FILES:=
28
29 PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
30
31 PKG_BUILD_PARALLEL:=0
32
33 include $(INCLUDE_DIR)/package.mk
34 include $(INCLUDE_DIR)/cmake.mk
35
36 # set to 1 to enable debugging
37 DEBUG=
38
39 define Package/libuci
40 SECTION:=libs
41 CATEGORY:=Libraries
42 TITLE:=C library for the Unified Configuration Interface (UCI)
43 DEPENDS:=+libubox
44 endef
45
46 define Package/uci
47 SECTION:=base
48 CATEGORY:=Base system
49 DEPENDS:=+libuci
50 TITLE:=Utility for the Unified Configuration Interface (UCI)
51 endef
52
53 define Package/libuci-lua
54 SECTION=libs
55 CATEGORY=Libraries
56 DEPENDS:=+libuci +liblua
57 TITLE:=Lua plugin for UCI
58 endef
59
60 TARGET_CFLAGS += -I$(STAGING_DIR)/usr/include
61 TARGET_LDFLAGS += -L$(STAGING_DIR)/usr/lib
62
63 CMAKE_OPTIONS = \
64 -DLUAPATH=/usr/lib/lua \
65 $(if $(DEBUG),-DUCI_DEBUG=ON)
66
67 define Package/libuci/install
68 $(INSTALL_DIR) $(1)/lib
69 $(CP) $(PKG_BUILD_DIR)/libuci.so* $(1)/lib/
70 endef
71
72 define Package/libuci-lua/install
73 $(INSTALL_DIR) $(1)/usr/lib/lua
74 $(CP) $(PKG_BUILD_DIR)/lua/uci.so $(1)/usr/lib/lua/
75 endef
76
77 define Package/uci/install
78 $(INSTALL_DIR) $(1)/etc/uci-defaults
79 $(INSTALL_DIR) $(1)/sbin
80 $(INSTALL_BIN) $(PKG_BUILD_DIR)/uci $(1)/sbin/
81 $(CP) ./files/* $(1)/
82 endef
83
84 define Build/InstallDev
85 $(INSTALL_DIR) $(1)/usr/include
86 $(CP) $(PKG_BUILD_DIR)/uci{,_config,_blob,map}.h $(1)/usr/include
87 $(INSTALL_DIR) $(1)/usr/lib
88 $(CP) $(PKG_BUILD_DIR)/libuci.so* $(1)/usr/lib
89 $(CP) $(PKG_BUILD_DIR)/libucimap.a $(1)/usr/lib
90 endef
91
92 $(eval $(call BuildPackage,uci))
93 $(eval $(call BuildPackage,libuci))
94 $(eval $(call BuildPackage,libuci-lua))