Merge pull request #12870 from neheb/meson2
[feed/packages.git] / libs / zmq / Makefile
1 #
2 # Copyright (C) 2016 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7 # This Makefile for ZeroMQ
8 #
9
10 include $(TOPDIR)/rules.mk
11
12 PKG_NAME:=zeromq
13 PKG_VERSION:=4.1.7
14 PKG_RELEASE:=2
15
16 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
17 PKG_SOURCE_URL:=https://github.com/zeromq/zeromq4-1/releases/download/v$(PKG_VERSION)
18 PKG_HASH:=31c383cfcd3be1dc8a66e448c403029e793687e70473b89c4cc0bd626e7da299
19
20 PKG_MAINTAINER:=Dirk Chang <dirk@kooiot.com>
21 PKG_LICENSE:=GPL-3.0-or-later
22 PKG_LICENSE_FILES:=LICENCE.txt
23 PKG_CPE_ID:=cpe:/a:zeromq:libzmq
24
25 PKG_BUILD_PARALLEL:=1
26 CMAKE_BINARY_SUBDIR:=openwrt-build
27
28 include $(INCLUDE_DIR)/package.mk
29 include $(INCLUDE_DIR)/cmake.mk
30
31 define Package/libzmq/default
32 TITLE:=ZeroMQ - Message Queue engine
33 URL:=http://www.zeromq.org/
34 SECTION:=libs
35 CATEGORY:=Libraries
36 DEPENDS:=+libuuid +libpthread +librt +libstdcpp
37 PROVIDES:=libzmq
38 endef
39
40 define Package/libzmq-nc
41 $(call Package/libzmq/default)
42 VARIANT:=nc
43 endef
44
45 define Package/libzmq-curve
46 $(call Package/libzmq/default)
47 VARIANT:=curve
48 TITLE+= (CurveZMQ)
49 DEPENDS+=+libsodium
50 endef
51
52 define Package/libzmq-nc/description
53 This package contains the ZeroMQ messaging engine shared library.
54 endef
55
56 define Package/libzmq-curve/description
57 $(call Package/libzmq-nc/description)
58 Includes CurveZMQ security by libsodium.
59 endef
60
61 CMAKE_OPTIONS += \
62 -DA2X_EXECUTABLE=OFF \
63 -DASCIIDOC_EXECUTABLE=OFF \
64 -DCMAKE_SKIP_INSTALL_RPATH=ON \
65 -DZMQ_HAVE_SOCK_CLOEXEC=ON \
66 -DZMQ_HAVE_SO_KEEPALIVE=ON \
67 -DZMQ_HAVE_TCP_KEEPCNT=ON \
68 -DZMQ_HAVE_TCP_KEEPIDLE=ON \
69 -DZMQ_HAVE_TCP_KEEPINTVL=ON \
70 -DZMQ_HAVE_TCP_KEEPALIVE=ON \
71 -DENABLE_CURVE=ON \
72 -DENABLE_EVENTFD=ON \
73 -DPOLLER=epoll \
74 -DPYTHON_EXECUTABLE=OFF \
75 -DRT_LIBRARY=OFF \
76 -DWITH_OPENPGM=OFF \
77 -DZMQ_BUILD_TESTS=OFF
78
79 ifeq ($(BUILD_VARIANT),curve)
80 CMAKE_OPTIONS += -DWITH_LIBSODIUM=ON
81 else
82 CMAKE_OPTIONS += -DWITH_LIBSODIUM=OFF
83 endif
84
85 define Build/InstallDev
86 $(INSTALL_DIR) $(1)/usr/include
87 $(CP) $(PKG_INSTALL_DIR)/usr/include/zmq.h $(1)/usr/include
88 $(CP) $(PKG_INSTALL_DIR)/usr/include/zmq_utils.h $(1)/usr/include
89 $(INSTALL_DIR) $(1)/usr/lib
90 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libzmq.so* $(1)/usr/lib/
91 $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
92 $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libzmq.pc $(1)/usr/lib/pkgconfig/
93 endef
94
95 define Package/libzmq-nc/install
96 $(INSTALL_DIR) $(1)/usr/lib
97 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libzmq.so $(1)/usr/lib/
98 endef
99
100 Package/libzmq-curve/install=$(Package/libzmq-nc/install)
101
102 $(eval $(call BuildPackage,libzmq-nc))
103 $(eval $(call BuildPackage,libzmq-curve))