Merge pull request #4351 from sartura/sysrepo_release
[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.6.0
15
16 PKG_SOURCE_PROTO:=git
17 PKG_SOURCE_VERSION:=e4a5705a4c5293ba121048c71899b98243d99edf
18 PKG_SOURCE:=$(PKG_NAME)-$(PKG_SOURCE_VERSION).tar.bz2
19 PKG_SOURCE_URL:=https://github.com/sysrepo/sysrepo.git
20 PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_SOURCE_VERSION)
21
22 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_SOURCE_SUBDIR)
23
24 CMAKE_INSTALL:=1
25
26 PKG_BUILD_PARALLEL:=1
27 PKG_INSTALL:=1
28
29 include $(INCLUDE_DIR)/package.mk
30 include $(INCLUDE_DIR)/cmake.mk
31
32 define Package/libsysrepo
33 SECTION:=util
34 CATEGORY:=Utilities
35 URL:=$(PKG_SOURCE_URL)
36 TITLE:=YANG-based data store library
37 DEPENDS:=+libyang +libprotobuf-c +libev +libavl
38 endef
39
40 define Package/sysrepod
41 SECTION:=util
42 CATEGORY:=Utilities
43 URL:=$(PKG_SOURCE_URL)
44 TITLE:=YANG-based data store daemon
45 DEPENDS:=+libsysrepo
46 endef
47
48 define Package/sysrepoctl
49 SECTION:=util
50 CATEGORY:=Utilities
51 URL:=$(PKG_SOURCE_URL)
52 TITLE:=sysrepo cli tool
53 DEPENDS:=+libsysrepo
54 endef
55
56 define Package/sysrepocfg
57 SECTION:=util
58 CATEGORY:=Utilities
59 URL:=$(PKG_SOURCE_URL)
60 TITLE:=sysrepo configuration tool
61 DEPENDS:=+libsysrepo
62 endef
63
64 define Package/sysrepo-plugind
65 SECTION:=util
66 CATEGORY:=Utilities
67 URL:=$(PKG_SOURCE_URL)
68 TITLE:=sysrepo plugin daemon
69 DEPENDS:=+libsysrepo
70 endef
71
72 define Package/sysrepo/description
73 Sysrepo is an YANG-based configuration and operational state data store for Unix/Linux applications.
74 endef
75
76 CMAKE_OPTIONS += \
77 -DCMAKE_BUILD_TYPE:STRING=Release \
78 -DENABLE_TESTS:BOOL=FALSE \
79 -DBUILD_EXAMPLES:BOOL=FALSE \
80 -DCMAKE_DISABLE_FIND_PACKAGE_SWIG=TRUE \
81 -DGEN_LANGUAGE_BINDINGS:BOOL=FALSE \
82 -DREPOSITORY_LOC:PATH=/etc/sysrepo \
83 -DCMAKE_INSTALL_PREFIX:PATH=/usr \
84 -DENABLE_NACM:BOOL=FALSE
85
86 define Package/libsysrepo/install
87 $(INSTALL_DIR) $(1)/usr/lib
88 $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/libsysrepo.so* $(1)/usr/lib/
89
90 $(INSTALL_DIR) $(1)/etc/sysrepo/yang/internal
91 $(INSTALL_CONF) $(PKG_BUILD_DIR)/yang/sysrepo-module-dependencies.yang $(1)/etc/sysrepo/yang/internal
92 $(INSTALL_CONF) $(PKG_BUILD_DIR)/yang/sysrepo-notification-store.yang $(1)/etc/sysrepo/yang/internal
93 $(INSTALL_CONF) $(PKG_BUILD_DIR)/yang/sysrepo-persistent-data.yang $(1)/etc/sysrepo/yang/internal
94
95 $(INSTALL_DIR) $(1)/etc/sysrepo/yang
96 $(INSTALL_DATA) $(PKG_BUILD_DIR)/yang/ietf-netconf-acm@2012-02-22.yang $(1)/etc/sysrepo/yang/
97 $(INSTALL_DATA) $(PKG_BUILD_DIR)/yang/ietf-netconf-notifications.yang $(1)/etc/sysrepo/yang/
98 $(INSTALL_DATA) $(PKG_BUILD_DIR)/yang/nc-notifications.yang $(1)/etc/sysrepo/yang/
99 $(INSTALL_DATA) $(PKG_BUILD_DIR)/yang/notifications.yang $(1)/etc/sysrepo/yang/
100 $(INSTALL_DATA) $(PKG_BUILD_DIR)/yang/ietf-netconf@2011-06-01.yang $(1)/etc/sysrepo/yang/
101
102 $(INSTALL_DIR) $(1)/etc/sysrepo/data/internal
103 $(INSTALL_DIR) $(1)/etc/sysrepo/data/notifications
104
105 $(INSTALL_DIR) $(1)/etc/uci-defaults
106 $(INSTALL_BIN) ./files/libsysrepo.default $(1)/etc/uci-defaults/95_libsysrepo
107 endef
108
109 define Package/sysrepod/install
110 $(INSTALL_DIR) $(1)/bin
111 $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/sysrepod $(1)/bin/
112
113 $(INSTALL_DIR) $(1)/etc/init.d/
114 $(INSTALL_BIN) ./files/sysrepod.init $(1)/etc/init.d/sysrepod
115 endef
116
117 define Package/sysrepoctl/install
118 $(INSTALL_DIR) $(1)/bin
119 $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/sysrepoctl $(1)/bin/
120 endef
121
122 define Package/sysrepocfg/install
123 $(INSTALL_DIR) $(1)/bin
124 $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/sysrepocfg $(1)/bin/
125 endef
126
127 define Package/sysrepo-plugind/install
128 $(INSTALL_DIR) $(1)/bin
129 $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/sysrepo-plugind $(1)/bin/
130
131 $(INSTALL_DIR) $(1)/etc/init.d/
132 $(INSTALL_BIN) ./files/sysrepo-plugind.init $(1)/etc/init.d/sysrepo-plugind
133 endef
134
135 $(eval $(call BuildPackage,libsysrepo))
136 $(eval $(call BuildPackage,sysrepod))
137 $(eval $(call BuildPackage,sysrepoctl))
138 $(eval $(call BuildPackage,sysrepocfg))
139 $(eval $(call BuildPackage,sysrepo-plugind))