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