Merge pull request #11353 from kvuorine/fwknop-fixes
[feed/packages.git] / libs / libyang / 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_NAME:=libyang
11 PKG_VERSION:=1.0.184
12 PKG_RELEASE:=1
13
14 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
15 PKG_SOURCE_URL:=https://codeload.github.com/CESNET/libyang/tar.gz/v$(PKG_VERSION)?
16 PKG_HASH:=1a5637451b73c4c5683837eb4c51371bb084795f653bc1a5fc20fed5541b58bc
17
18 PKG_MAINTAINER:=Jakov Smolic <jakov.smolic@sartura.hr>
19 PKG_LICENSE:=BSD-3-Clause
20 PKG_LICENSE_FILES:=LICENSE
21
22 CMAKE_INSTALL:=1
23 PKG_BUILD_PARALLEL:=1
24 CMAKE_BINARY_SUBDIR:=build
25
26 include $(INCLUDE_DIR)/package.mk
27 include $(INCLUDE_DIR)/cmake.mk
28
29 define Package/libyang
30 SECTION:=libs
31 CATEGORY:=Libraries
32 TITLE:=YANG data modeling language library
33 URL:=https://github.com/CESNET/libyang
34 DEPENDS:=+libpcre +libpthread
35 endef
36
37 define Package/libyang-cpp
38 SECTION:=libs
39 CATEGORY:=Libraries
40 TITLE:=YANG data modeling C++ language library
41 URL:=https://github.com/CESNET/libyang
42 DEPENDS:=+libyang +libstdcpp
43 endef
44
45 define Package/yanglint
46 SECTION:=utils
47 CATEGORY:=Utilities
48 TITLE:=YANG data modeling language utility
49 URL:=https://github.com/CESNET/libyang
50 DEPENDS:=+libyang
51 endef
52
53 define Package/libyang/description
54 libyang is YANG data modelling language parser and toolkit written (and providing API) in C.
55 The library is used e.g. in libnetconf2, Netopeer2 or sysrepo projects.
56 endef
57
58 CMAKE_OPTIONS += \
59 -DENABLE_LYD_PRIV:BOOL=ON \
60 -DCMAKE_BUILD_TYPE:String="Release" \
61 -DGEN_LANGUAGE_BINDINGS=ON \
62 -DGEN_PYTHON_BINDINGS=OFF
63
64
65 define Package/libyang/install
66 $(INSTALL_DIR) $(1)/usr/lib
67 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libyang.so* $(1)/usr/lib/
68
69 $(INSTALL_DIR) $(1)/usr/lib/libyang1
70 $(INSTALL_DIR) $(1)/usr/lib/libyang1/extensions
71 $(INSTALL_DIR) $(1)/usr/lib/libyang1/user_types
72 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/libyang1/extensions/* $(1)/usr/lib/libyang1/extensions
73 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/libyang1/user_types/* $(1)/usr/lib/libyang1/user_types
74 endef
75
76 define Package/libyang-cpp/install
77 $(INSTALL_DIR) $(1)/usr/lib
78 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libyang-cpp.so* $(1)/usr/lib/
79 endef
80
81 define Package/yanglint/install
82 $(INSTALL_DIR) $(1)/usr/bin
83 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/yanglint $(1)/usr/bin/
84 endef
85
86 $(eval $(call BuildPackage,libyang))
87 $(eval $(call BuildPackage,libyang-cpp))
88 $(eval $(call BuildPackage,yanglint))