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
:=4cb978502312bff2dcdaab6a433b1bf2
20 PKG_BUILD_DIR
:=$(BUILD_DIR
)/$(PKG_NAME
)-$(BUILD_VARIANT
)/$(PKG_NAME
)-$(PKG_VERSION
)
22 include $(INCLUDE_DIR
)/package.mk
24 define Package
/$(PKG_NAME
)/default
27 TITLE
:=mosquitto
- an MQTT message broker
28 URL
:=http
://www.mosquitto.org
/
29 MAINTAINER
:=Karl Palsson
<karlp@remake.is
>
30 DEPENDS
:= +librt
+libuuid
31 USERID
:=mosquitto
=200:mosquitto
=200
34 define Package
/$(PKG_NAME
)
35 $(call Package
/mosquitto
/default
)
36 TITLE
+= (with SSL support
)
37 DEPENDS
+= +libopenssl
+MOSQUITTO_LWS
:libwebsockets-openssl
41 define Package
/$(PKG_NAME
)-nossl
42 $(call Package
/$(PKG_NAME
)/default
)
43 TITLE
+= (without SSL support
)
47 define Package
/$(PKG_NAME
)/config
48 source
"$(SOURCE)/Config.in"
51 define Package
/$(PKG_NAME
)/default
/description
52 Mosquitto is an open source
(BSD licensed
) message broker that implements
53 the MQTT protocol version
3.1 and
3.1.1. MQTT provides a lightweight
54 method of carrying out messaging using a publish
/subscribe model.
56 This package also includes some basic support for configuring via UCI
59 define Package
/$(PKG_NAME
)/description
60 $(call Package
/$(PKG_NAME
)/default
/description
)
61 This package is built with SSL support
64 define Package
/$(PKG_NAME
)-nossl
/description
65 $(call Package
/$(PKG_NAME
)/default
/description
)
66 This package is built WITHOUT SSL support.
70 define Package
/mosquitto-client
/default
71 $(Package
/mosquitto
/default
)
72 TITLE
:= mosquitto
- client tools
75 define Package
/mosquitto-client
76 $(call Package
/mosquitto-client
/default
)
77 TITLE
+= (With SSL support
)
78 DEPENDS
+=+libmosquitto
81 define Package
/mosquitto-client-nossl
82 $(call Package
/mosquitto-client
/default
)
83 TITLE
+= (Without SSL support
)
84 DEPENDS
+=+libmosquitto-nossl
88 define Package
/mosquitto-client
/default
/description
89 Command line client tools for publishing messages to MQTT servers
90 and subscribing to topics.
93 define Package
/mosquitto-client
/description
94 $(call Package
/mosquitto-client
/default
/description
)
95 This package is built with SSL support
97 define Package
/mosquitto-client-nossl
/description
98 $(call Package
/mosquitto-client
/default
/description
)
99 This package is built without SSL support
102 define Package
/libmosquitto
/default
103 $(Package
/mosquitto
/default
)
106 DEPENDS
:=+libpthread
+librt
+libcares
107 TITLE
:= mosquitto
- client library
110 define Package
/libmosquitto
111 $(call Package
/libmosquitto
/default
)
112 TITLE
+= (With SSL Support
)
113 DEPENDS
+= +libopenssl
116 define Package
/libmosquitto-nossl
117 $(call Package
/libmosquitto
/default
)
118 TITLE
+= (Without SSL Support
)
122 define Package
/libmosquitto
/default
/description
123 Library required for mosquitto
's command line client tools, also for
124 use by any third party software that wants to communicate with a
127 Should be useable for communicating with any MQTT v3.1/3.1.1 compatible
128 server, such as IBM's RSMB
, in addition to Mosquitto
131 define Package
/libmosquitto
/description
132 $(call Package
/libmosquitto
/default
/description
)
133 This package is built with SSL support
135 define Package
/libmosquitto-nossl
/description
136 $(call Package
/libmosquitto
/default
/description
)
137 This package is built without SSL support
141 define Package
/$(PKG_NAME
)/conffiles
142 /etc
/mosquitto
/mosquitto.conf
143 /etc
/config
/mosquitto
146 Package
/$(PKG_NAME
)-nossl
/conffiles
= $(Package
/$(PKG_NAME
)/conffiles
)
148 define Package
/mosquitto
/install/default
149 $(INSTALL_DIR
) $(1)/usr
/sbin
150 $(INSTALL_BIN
) $(PKG_BUILD_DIR
)/src
/mosquitto
$(1)/usr
/sbin
/mosquitto
151 $(INSTALL_DIR
) $(1)/etc
/mosquitto
152 $(INSTALL_CONF
) $(PKG_BUILD_DIR
)/mosquitto.conf
$(1)/etc
/mosquitto
/mosquitto.conf
153 $(INSTALL_DIR
) $(1)/etc
/init.d
154 $(INSTALL_BIN
) .
/files
/mosquitto.init
$(1)/etc
/init.d
/mosquitto
155 $(INSTALL_DIR
) $(1)/usr
/bin
156 $(INSTALL_BIN
) .
/files
/mosquitto.uci.convert
$(1)/usr
/bin
159 define Package
/mosquitto-nossl
/install
160 $(call Package
/mosquitto
/install/default
,$(1))
163 define Package
/mosquitto
/install
164 $(call Package
/mosquitto
/install/default
,$(1))
165 ifeq ($(CONFIG_MOSQUITTO_PASSWD
),y
)
166 $(INSTALL_DIR
) $(1)/usr
/bin
167 $(INSTALL_BIN
) $(PKG_BUILD_DIR
)/src
/mosquitto_passwd
$(1)/usr
/bin
171 define Package
/mosquitto-client
/install
172 $(INSTALL_DIR
) $(1)/usr
/bin
173 $(INSTALL_BIN
) $(PKG_BUILD_DIR
)/client
/mosquitto_pub
$(1)/usr
/bin
/mosquitto_pub
174 $(INSTALL_BIN
) $(PKG_BUILD_DIR
)/client
/mosquitto_sub
$(1)/usr
/bin
/mosquitto_sub
176 Package
/mosquitto-client-nossl
/install = $(Package
/mosquitto-client
/install)
178 # This installs files into ./staging_dir/. so that you can cross compile from the host
179 define Build
/InstallDev
180 $(INSTALL_DIR
) $(1)/usr
/include
181 $(CP
) $(PKG_BUILD_DIR
)/lib
/mosquitto.h
$(1)/usr
/include
182 $(INSTALL_DIR
) $(1)/usr
/lib
183 $(CP
) $(PKG_BUILD_DIR
)/lib
/libmosquitto.so
.1 $(1)/usr
/lib
/
184 $(LN
) libmosquitto.so
.1 $(1)/usr
/lib
/libmosquitto.so
187 # This installs files on the target. Compare with Build/InstallDev
188 define Package
/libmosquitto
/install
189 $(INSTALL_DIR
) $(1)/usr
/lib
190 $(INSTALL_BIN
) $(PKG_BUILD_DIR
)/lib
/libmosquitto.so
.1 $(1)/usr
/lib
/
191 $(LN
) libmosquitto.so
.1 $(1)/usr
/lib
/libmosquitto.so
193 Package
/libmosquitto-nossl
/install = $(Package
/libmosquitto
/install)
196 MAKE_FLAGS
+= WITH_DOCS
=no
197 ifeq ($(BUILD_VARIANT
),nossl
)
198 MAKE_FLAGS
+= WITH_TLS
=no WITH_WEBSOCKETS
=no
200 MAKE_FLAGS
+= WITH_WEBSOCKETS
=$(if
$(CONFIG_MOSQUITTO_LWS
),"yes","no")
203 $(eval
$(call BuildPackage
,$(PKG_NAME
)))
204 $(eval
$(call BuildPackage
,$(PKG_NAME
)-nossl
))
205 $(eval
$(call BuildPackage
,libmosquitto
))
206 $(eval
$(call BuildPackage
,libmosquitto-nossl
))
207 $(eval
$(call BuildPackage
,mosquitto-client
))
208 $(eval
$(call BuildPackage
,mosquitto-client-nossl
))