Merge pull request #10210 from jefferyto/use-default-PKG_BUILD_DIR
[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_INSTALL:=1
26 PKG_BUILD_PARALLEL:=1
27 PKG_REMOVE_FILES:=autogen.sh acinclude.m4 aclocal.m4
28
29 include $(INCLUDE_DIR)/package.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 # add extra configure flags here
62 CONFIGURE_ARGS += \
63 --enable-static \
64 --enable-shared \
65 --with-pic \
66 --with-relaxed \
67 --without-documentation
68
69 ifeq ($(BUILD_VARIANT),curve)
70 CONFIGURE_ARGS+= --with-libsodium
71 else
72 CONFIGURE_ARGS+= --without-libsodium
73 endif
74
75 TARGET_CXXFLAGS += -Wno-error=cpp
76
77 define Build/InstallDev
78 $(INSTALL_DIR) $(1)/usr/include
79 $(CP) $(PKG_INSTALL_DIR)/usr/include/zmq.h $(1)/usr/include
80 $(CP) $(PKG_INSTALL_DIR)/usr/include/zmq_utils.h $(1)/usr/include
81 $(INSTALL_DIR) $(1)/usr/lib
82 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libzmq.{a,so*} $(1)/usr/lib/
83 $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
84 $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libzmq.pc $(1)/usr/lib/pkgconfig/
85 endef
86
87 define Package/libzmq-nc/install
88 $(INSTALL_DIR) $(1)/usr/lib
89 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libzmq.so.* $(1)/usr/lib/
90 endef
91
92 Package/libzmq-curve/install=$(Package/libzmq-nc/install)
93
94 $(eval $(call BuildPackage,libzmq-nc))
95 $(eval $(call BuildPackage,libzmq-curve))