2 # Copyright (C) 2011-2013 OpenWrt.org
3 # Copyright (C) 2010 Jo-Philipp Wich <xm@subsignal.org>
5 # This is free software, licensed under the GNU General Public License v2.
6 # See /LICENSE for more information.
9 include $(TOPDIR
)/rules.mk
14 PKG_LICENSE
:=BSD-3-Clause
15 PKG_LICENSE_FILES
:=LICENSE.txt
17 PKG_SOURCE
:=$(PKG_NAME
)-$(PKG_VERSION
).
tar.gz
18 PKG_SOURCE_URL
:=http
://mosquitto.org
/files
/source
/
19 PKG_MD5SUM
:=61839b47b58c5799aab76584f13ed66f
20 PKG_BUILD_DIR
:=$(BUILD_DIR
)/$(PKG_NAME
)-$(BUILD_VARIANT
)/$(PKG_NAME
)-$(PKG_VERSION
)
22 include $(INCLUDE_DIR
)/package.mk
24 define Package
/mosquitto
/default
27 TITLE
:=mosquitto
- an MQTT message broker
28 URL
:=http
://www.mosquitto.org
/
29 MAINTAINER
:=Karl Palsson
<karlp@etactica.com
>
30 DEPENDS
:= +librt
+libuuid
31 USERID
:=mosquitto
=200:mosquitto
=200
34 define Package
/mosquitto-ssl
35 $(call Package
/mosquitto
/default
)
36 TITLE
+= (with SSL support
)
37 DEPENDS
+= +libopenssl
+MOSQUITTO_LWS
:libwebsockets-openssl
42 define Package
/mosquitto-nossl
43 $(call Package
/mosquitto
/default
)
44 TITLE
+= (without SSL support
)
49 define Package
/mosquitto-ssl
/config
50 source
"$(SOURCE)/Config.in"
53 define Package
/mosquitto
/default
/description
54 Mosquitto is an open source
(BSD licensed
) message broker that implements
55 the MQTT protocol version
3.1 and
3.1.1. MQTT provides a lightweight
56 method of carrying out messaging using a publish
/subscribe model.
58 This package also includes some basic support for configuring via UCI
61 define Package
/mosquitto-ssl
/description
62 $(call Package
/mosquitto
/default
/description
)
63 This package is built with SSL support
66 define Package
/mosquitto-nossl
/description
67 $(call Package
/mosquitto
/default
/description
)
68 This package is built WITHOUT SSL support.
72 define Package
/mosquitto-client
/default
73 $(Package
/mosquitto
/default
)
74 TITLE
:= mosquitto
- client tools
77 define Package
/mosquitto-client
78 $(call Package
/mosquitto-client
/default
)
79 TITLE
+= (With SSL support
)
80 DEPENDS
+=+libmosquitto-ssl
83 define Package
/mosquitto-client-nossl
84 $(call Package
/mosquitto-client
/default
)
85 TITLE
+= (Without SSL support
)
86 DEPENDS
+=+libmosquitto-nossl
90 define Package
/mosquitto-client
/default
/description
91 Command line client tools for publishing messages to MQTT servers
92 and subscribing to topics.
95 define Package
/mosquitto-client
/description
96 $(call Package
/mosquitto-client
/default
/description
)
97 This package is built with SSL support
99 define Package
/mosquitto-client-nossl
/description
100 $(call Package
/mosquitto-client
/default
/description
)
101 This package is built without SSL support
104 define Package
/libmosquitto
/default
105 $(Package
/mosquitto
/default
)
108 DEPENDS
:=+libpthread
+librt
+libcares
109 TITLE
:= mosquitto
- client library
110 PROVIDES
:=libmosquitto
113 define Package
/libmosquitto-ssl
114 $(call Package
/libmosquitto
/default
)
115 TITLE
+= (With SSL Support
)
116 DEPENDS
+= +libopenssl
119 define Package
/libmosquitto-nossl
120 $(call Package
/libmosquitto
/default
)
121 TITLE
+= (Without SSL Support
)
125 define Package
/libmosquitto
/default
/description
126 Library required for mosquitto
's command line client tools, also for
127 use by any third party software that wants to communicate with a
130 Should be useable for communicating with any MQTT v3.1/3.1.1 compatible
131 server, such as IBM's RSMB
, in addition to Mosquitto
134 define Package
/libmosquitto-ssl
/description
135 $(call Package
/libmosquitto
/default
/description
)
136 This package is built with SSL support
138 define Package
/libmosquitto-nossl
/description
139 $(call Package
/libmosquitto
/default
/description
)
140 This package is built without SSL support
143 define Package
/libmosquittopp
146 DEPENDS
:=+libmosquitto-ssl
+libstdcpp
147 TITLE
:= mosquitto
- client c
++ library
150 define Package
/libmosquittopp
/description
151 C
++ Library wrapper for libmosquitto.
154 define Package
/mosquitto-ssl
/conffiles
155 /etc
/mosquitto
/mosquitto.conf
156 /etc
/config
/mosquitto
159 Package
/mosquitto-nossl
/conffiles
= $(Package
/mosquitto-ssl
/conffiles
)
161 define Package
/mosquitto
/install/default
162 $(INSTALL_DIR
) $(1)/usr
/sbin
163 $(INSTALL_BIN
) $(PKG_BUILD_DIR
)/src
/mosquitto
$(1)/usr
/sbin
/mosquitto
164 $(INSTALL_DIR
) $(1)/etc
/mosquitto
165 $(INSTALL_CONF
) $(PKG_BUILD_DIR
)/mosquitto.conf
$(1)/etc
/mosquitto
/mosquitto.conf
166 $(CP
) .
/files
/* $(1)/
169 define Package
/mosquitto-nossl
/install
170 $(call Package
/mosquitto
/install/default
,$(1))
173 define Package
/mosquitto-ssl
/install
174 $(call Package
/mosquitto
/install/default
,$(1))
175 ifeq ($(CONFIG_MOSQUITTO_PASSWD
),y
)
176 $(INSTALL_DIR
) $(1)/usr
/bin
177 $(INSTALL_BIN
) $(PKG_BUILD_DIR
)/src
/mosquitto_passwd
$(1)/usr
/bin
181 define Package
/mosquitto-client
/install
182 $(INSTALL_DIR
) $(1)/usr
/bin
183 $(INSTALL_BIN
) $(PKG_BUILD_DIR
)/client
/mosquitto_pub
$(1)/usr
/bin
/mosquitto_pub
184 $(INSTALL_BIN
) $(PKG_BUILD_DIR
)/client
/mosquitto_sub
$(1)/usr
/bin
/mosquitto_sub
186 Package
/mosquitto-client-nossl
/install = $(Package
/mosquitto-client
/install)
188 # This installs files into ./staging_dir/. so that you can cross compile from the host
189 define Build
/InstallDev
190 $(INSTALL_DIR
) $(1)/usr
/include
191 $(CP
) $(PKG_BUILD_DIR
)/lib
/mosquitto.h
$(1)/usr
/include
192 $(CP
) $(PKG_BUILD_DIR
)/lib
/cpp/mosquittopp.h
$(1)/usr
/include
193 $(INSTALL_DIR
) $(1)/usr
/lib
194 $(CP
) $(PKG_BUILD_DIR
)/lib
/libmosquitto.so
.1 $(1)/usr
/lib
/
195 $(CP
) $(PKG_BUILD_DIR
)/lib
/cpp/libmosquittopp.so
.1 $(1)/usr
/lib
/
196 $(LN
) libmosquitto.so
.1 $(1)/usr
/lib
/libmosquitto.so
197 $(LN
) libmosquittopp.so
.1 $(1)/usr
/lib
/libmosquittopp.so
200 # This installs files on the target. Compare with Build/InstallDev
201 define Package
/libmosquitto-ssl
/install
202 $(INSTALL_DIR
) $(1)/usr
/lib
203 $(INSTALL_BIN
) $(PKG_BUILD_DIR
)/lib
/libmosquitto.so
.1 $(1)/usr
/lib
/
204 $(LN
) libmosquitto.so
.1 $(1)/usr
/lib
/libmosquitto.so
206 Package
/libmosquitto-nossl
/install = $(Package
/libmosquitto-ssl
/install)
208 define Package
/libmosquittopp
/install
209 $(INSTALL_DIR
) $(1)/usr
/lib
210 $(INSTALL_BIN
) $(PKG_BUILD_DIR
)/lib
/cpp/libmosquittopp.so
.1 $(1)/usr
/lib
/
211 $(LN
) libmosquittopp.so
.1 $(1)/usr
/lib
/libmosquittopp.so
215 MAKE_FLAGS
+= WITH_DOCS
=no UNAME
=Linux
216 ifeq ($(BUILD_VARIANT
),nossl
)
217 MAKE_FLAGS
+= WITH_TLS
=no WITH_WEBSOCKETS
=no
219 MAKE_FLAGS
+= WITH_WEBSOCKETS
=$(if
$(CONFIG_MOSQUITTO_LWS
),"yes","no")
222 $(eval
$(call BuildPackage
,mosquitto-ssl
))
223 $(eval
$(call BuildPackage
,mosquitto-nossl
))
224 $(eval
$(call BuildPackage
,libmosquitto-ssl
))
225 $(eval
$(call BuildPackage
,libmosquitto-nossl
))
226 $(eval
$(call BuildPackage
,libmosquittopp
))
227 $(eval
$(call BuildPackage
,mosquitto-client
))
228 $(eval
$(call BuildPackage
,mosquitto-client-nossl
))