sysrepo: bump to latest version
[feed/packages.git] / net / sysrepo / Makefile
1 #
2 # Copyright (C) 2017 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7
8 include $(TOPDIR)/rules.mk
9
10 PKG_LICENSE:=ASL-2.0
11 PKG_MAINTAINER:=Mislav Novakovic <mislav.novakovic@sartura.hr>
12
13 PKG_NAME:=sysrepo
14 PKG_VERSION:=0.7.1
15 PKG_RELEASE:=2
16
17 PKG_SOURCE_PROTO:=git
18 PKG_SOURCE_VERSION:=0b36f308574a60d7ee36b1a3118b999618bb40d8
19 PKG_MIRROR_HASH:=d28ff0356b6ac4b934bb45ff77973efe7964b86a54270d11e1fd06a2af9bdbc8
20 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.xz
21 PKG_SOURCE_URL:=https://github.com/sysrepo/sysrepo.git
22 PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION)
23
24 PKG_BUILD_ROOT:=$(BUILD_DIR)/$(PKG_SOURCE_SUBDIR)
25 PKG_BUILD_DIR:=$(PKG_BUILD_ROOT)
26
27 CMAKE_INSTALL:=1
28
29 PKG_BUILD_PARALLEL:=1
30 PKG_INSTALL:=1
31
32 include $(INCLUDE_DIR)/package.mk
33 include $(INCLUDE_DIR)/cmake.mk
34
35 define Package/libsysrepo
36 SECTION:=utils
37 CATEGORY:=Utilities
38 URL:=$(PKG_SOURCE_URL)
39 TITLE:=YANG-based data store library
40 DEPENDS:=+libyang +libprotobuf-c +libev +libredblack +librt
41 endef
42
43 define Package/sysrepo
44 SECTION:=utils
45 CATEGORY:=Utilities
46 URL:=$(PKG_SOURCE_URL)
47 TITLE:=YANG-based data store daemon and plugin
48 DEPENDS:=+libsysrepo
49 endef
50
51 define Package/sysrepoctl
52 SECTION:=utils
53 CATEGORY:=Utilities
54 URL:=$(PKG_SOURCE_URL)
55 TITLE:=sysrepo cli tool
56 DEPENDS:=+libsysrepo
57 endef
58
59 define Package/sysrepocfg
60 SECTION:=utils
61 CATEGORY:=Utilities
62 URL:=$(PKG_SOURCE_URL)
63 TITLE:=sysrepo configuration tool
64 DEPENDS:=+libsysrepo
65 endef
66
67 define Package/sysrepo/description
68 Sysrepo is an YANG-based configuration and operational state data store for Unix/Linux applications.
69 endef
70
71 CMAKE_OPTIONS += \
72 -DCMAKE_BUILD_TYPE:STRING=Release \
73 -DUSE_AVL_LIB:BOOL=FALSE \
74 -DENABLE_TESTS:BOOL=FALSE \
75 -DBUILD_EXAMPLES:BOOL=FALSE \
76 -DCMAKE_DISABLE_FIND_PACKAGE_SWIG=TRUE \
77 -DGEN_LANGUAGE_BINDINGS:BOOL=FALSE \
78 -DREPOSITORY_LOC:PATH=/etc/sysrepo \
79 -DCMAKE_INSTALL_PREFIX:PATH=/usr \
80 -DENABLE_NACM:BOOL=FALSE \
81 -DREQUEST_TIMEOUT=6 \
82 -DLONG_REQUEST_TIMEOUT=30 \
83 -DCOMMIT_VERIFY_TIMEOUT=20 \
84 -DOPER_DATA_PROVIDE_TIMEOUT=4 \
85 -DNOTIF_AGE_TIMEOUT=120 \
86 -DNOTIF_TIME_WINDOW=20 \
87 -DUSE_SR_MEM_MGMT=0
88
89 define Package/libsysrepo/install
90 $(INSTALL_DIR) $(1)/usr/lib
91 $(CP) $(PKG_BUILD_DIR)/src/libsysrepo.so* $(1)/usr/lib/
92
93 $(INSTALL_DIR) $(1)/etc/sysrepo/yang/internal
94 $(INSTALL_CONF) $(PKG_BUILD_DIR)/yang/sysrepo-module-dependencies.yang $(1)/etc/sysrepo/yang/internal
95 $(INSTALL_CONF) $(PKG_BUILD_DIR)/yang/sysrepo-notification-store.yang $(1)/etc/sysrepo/yang/internal
96 $(INSTALL_CONF) $(PKG_BUILD_DIR)/yang/sysrepo-persistent-data.yang $(1)/etc/sysrepo/yang/internal
97
98 $(INSTALL_DIR) $(1)/etc/sysrepo/yang
99 $(INSTALL_DATA) $(PKG_BUILD_DIR)/yang/ietf-netconf-acm@2012-02-22.yang $(1)/etc/sysrepo/yang/
100 $(INSTALL_DATA) $(PKG_BUILD_DIR)/yang/ietf-netconf-notifications.yang $(1)/etc/sysrepo/yang/
101 $(INSTALL_DATA) $(PKG_BUILD_DIR)/yang/nc-notifications.yang $(1)/etc/sysrepo/yang/
102 $(INSTALL_DATA) $(PKG_BUILD_DIR)/yang/notifications.yang $(1)/etc/sysrepo/yang/
103 $(INSTALL_DATA) $(PKG_BUILD_DIR)/yang/ietf-netconf@2011-06-01.yang $(1)/etc/sysrepo/yang/
104
105 $(INSTALL_DIR) $(1)/etc/sysrepo/data/internal
106 $(INSTALL_DIR) $(1)/etc/sysrepo/data/notifications
107
108 $(INSTALL_DIR) $(1)/etc/uci-defaults
109 $(INSTALL_BIN) ./files/libsysrepo.default $(1)/etc/uci-defaults/95_libsysrepo
110 endef
111
112 define Package/sysrepo/install
113 $(INSTALL_DIR) $(1)/bin
114 $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/sysrepod $(1)/bin/
115
116 $(INSTALL_DIR) $(1)/bin
117 $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/sysrepo-plugind $(1)/bin/
118
119 $(INSTALL_DIR) $(1)/etc/init.d/
120 $(INSTALL_BIN) ./files/sysrepo.init $(1)/etc/init.d/sysrepo
121 endef
122
123 define Package/sysrepoctl/install
124 $(INSTALL_DIR) $(1)/bin
125 $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/sysrepoctl $(1)/bin/
126 endef
127
128 define Package/sysrepocfg/install
129 $(INSTALL_DIR) $(1)/bin
130 $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/sysrepocfg $(1)/bin/
131 endef
132
133 $(eval $(call BuildPackage,libsysrepo))
134 $(eval $(call BuildPackage,sysrepo))
135 $(eval $(call BuildPackage,sysrepoctl))
136 $(eval $(call BuildPackage,sysrepocfg))