Merge pull request #4853 from StevenHessing/noddos
[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.4
14 PKG_RELEASE:=1
15 PKG_MAINTAINER:=Dirk Chang <dirk@kooiot.com>
16 PKG_LICENSE:=GPL-3.0+
17 PKG_LICENSE_FILES:=LICENCE.txt
18
19 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
20 PKG_SOURCE_URL:= https://github.com/zeromq/zeromq4-1/releases/download/v$(PKG_VERSION)/
21 PKG_HASH:=e99f44fde25c2e4cb84ce440f87ca7d3fe3271c2b8cfbc67d55e4de25e6fe378
22
23 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION)
24 PKG_BUILD_DEPENDS:=libuuid
25
26 PKG_FIXUP:=autoreconf
27
28 PKG_INSTALL:=1
29
30
31 include $(INCLUDE_DIR)/uclibc++.mk
32 include $(INCLUDE_DIR)/package.mk
33
34 define Package/libzmq/default
35 TITLE:=ZeroMQ - Message Queue engine
36 URL:=http://www.zeromq.org/
37 SECTION:=libs
38 CATEGORY:=Libraries
39 DEPENDS:=+libuuid +libpthread +librt $(CXX_DEPENDS)
40 PROVIDES:=libzmq
41 endef
42
43 define Package/libzmq-nc
44 $(call Package/libzmq/default)
45 VARIANT:=nc
46 endef
47
48 define Package/libzmq-curve
49 $(call Package/libzmq/default)
50 VARIANT:=curve
51 TITLE+= (CurveZMQ)
52 DEPENDS+=+libsodium
53 endef
54
55 define Package/libzmq-nc/description
56 This package contains the ZeroMQ messaging engine shared library.
57 endef
58
59 define Package/libzmq-curve/description
60 $(call Package/libzmq-nc/description)
61 Includes CurveZMQ security by libsodium.
62 endef
63
64 # add extra configure flags here
65 CONFIGURE_ARGS += \
66 --enable-static \
67 --enable-shared
68
69 ifeq ($(BUILD_VARIANT),curve)
70 CONFIGURE_ARGS+= --with-libsodium
71 else
72 CONFIGURE_ARGS+= --without-libsodium
73 endif
74
75 define Build/InstallDev
76 $(INSTALL_DIR) $(1)/usr/include
77 $(CP) $(PKG_INSTALL_DIR)/usr/include/zmq.h $(1)/usr/include
78 $(CP) $(PKG_INSTALL_DIR)/usr/include/zmq_utils.h $(1)/usr/include
79 $(INSTALL_DIR) $(1)/usr/lib
80 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libzmq.{a,so*} $(1)/usr/lib/
81 $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
82 $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libzmq.pc $(1)/usr/lib/pkgconfig/
83 endef
84
85 define Package/libzmq-nc/install
86 $(INSTALL_DIR) $(1)/usr/lib
87 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libzmq.so.* $(1)/usr/lib/
88 endef
89
90 Package/libzmq-curve/install=$(Package/libzmq-nc/install)
91
92 $(eval $(call BuildPackage,libzmq-nc))
93 $(eval $(call BuildPackage,libzmq-curve))