29c416b0a16c7e941191f4ac91f00dc339ef2488
[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:=0.13.46
12 PKG_RELEASE=$(PKG_SOURCE_VERSION)
13
14 PKG_LICENSE:=GPL-2.0+
15 PKG_MAINTAINER:=Mislav Novakovic <mislav.novakovic@sartura.hr>
16
17 PKG_SOURCE_PROTO:=git
18 PKG_SOURCE_VERSION:=d1556e0ae3872d676dfd63bd6073fe7e72d0130f
19 PKG_MIRROR_HASH:=4a23a3854ceca147e113ab65ecdce3371e30b59436680e7d981b0bab6dbe751d
20 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.xz
21 PKG_SOURCE_URL:=https://github.com/CESNET/libyang.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 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/libyang
34 SECTION:=libs
35 CATEGORY:=Libraries
36 TITLE:=YANG data modeling language library
37 URL:=$(PKG_SOURCE_URL)
38 DEPENDS:=+libpcre +libpthread
39 endef
40
41 define Package/yanglint
42 SECTION:=utils
43 CATEGORY:=Utilities
44 TITLE:=YANG data modeling language utility
45 URL:=$(PKG_SOURCE_URL)
46 DEPENDS:=+libyang
47 endef
48
49 define Package/libyang/description
50 libyang is YANG data modelling language parser and toolkit written (and providing API) in C.
51 The library is used e.g. in libnetconf2, Netopeer2 or sysrepo projects.
52 endef
53
54 TARGET_LDFLAGS += -lm
55
56 CMAKE_OPTIONS += \
57 -DCMAKE_INSTALL_PREFIX:PATH=/usr \
58 -DCMAKE_BUILD_TYPE:STRING=Release
59
60 define Build/InstallDev
61 $(INSTALL_DIR) $(1)/usr/lib
62 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libyang.so* $(1)/usr/lib/
63
64 $(INSTALL_DIR) $(1)/usr/include/libyang
65 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/include/libyang/* $(1)/usr/include/libyang/
66
67 $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
68 $(INSTALL_CONF) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libyang.pc $(1)/usr/lib/pkgconfig/
69 endef
70
71 define Package/libyang/install
72 $(INSTALL_DIR) $(1)/usr/lib
73 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libyang.so* $(1)/usr/lib/
74
75 $(INSTALL_DIR) $(1)/usr/lib/libyang
76 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/libyang/* $(1)/usr/lib/libyang/
77 endef
78
79 define Package/yanglint/install
80 $(INSTALL_DIR) $(1)/usr/bin
81 $(INSTALL_BIN) $(PKG_BUILD_DIR)/yanglint $(1)/usr/bin/
82 endef
83
84 $(eval $(call BuildPackage,libyang))
85 $(eval $(call BuildPackage,yanglint))