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