3 Summary: An Open Source MQTT v3.1 Broker
9 Source0: https://mosquitto.org/files/source/%{name}-%{version}.tar.gz
10 # Source0-md5: 22b7a8b05caa692cb22496b791529193
11 URL: http://mosquitto.org/
12 BuildRequires: cmake >= 3.1
13 BuildRequires: cjson-devel
14 BuildRequires: libstdc++-devel
15 BuildRequires: libwrap-devel
16 BuildRequires: libxslt-progs
17 BuildRequires: openssl-devel
18 BuildRequires: pkgconfig
19 BuildRequires: rpmbuild(macros) >= 1.605
20 BuildRequires: systemd-devel
21 BuildRequires: uthash-devel
22 Requires(postun): /usr/sbin/groupdel
23 Requires(postun): /usr/sbin/userdel
24 Requires(pre): /bin/id
25 Requires(pre): /usr/bin/getgid
26 Requires(pre): /usr/sbin/groupadd
27 Requires(pre): /usr/sbin/useradd
28 Suggests: %{name}-clients
29 Provides: group(mosquitto)
30 Provides: user(mosquitto)
31 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
34 Mosquitto is an open source (BSD licensed) message broker that
35 implements the MQ Telemetry Transport protocol version 3.1. MQTT
36 provides a lightweight method of carrying out messaging using a
37 publish/subscribe model. This makes it suitable for "machine to
38 machine" messaging such as with low power sensors or mobile devices
39 such as phones, embedded computers or micro-controllers like the
43 Summary: Mosquitto command line pub/sub clients
44 Group: Applications/Networking
45 Requires: libmosquitto = %{version}-%{release}
48 This is two MQTT version 3 clients. The first can publish messages to
49 a broker, the second can subscribe to multiple topics on a broker.
51 %package -n libmosquitto
52 Summary: MQTT C client library
53 Group: Development/Libraries
55 %description -n libmosquitto
56 This is a library that provides a means of implementing MQTT version 3
57 clients. MQTT provides a lightweight method of carrying out messaging
58 using a publish/subscribe model.
60 %package -n libmosquitto-devel
61 Summary: MQTT C client library development files
62 Group: Development/Libraries
63 Requires: libmosquitto = %{version}-%{release}
65 %description -n libmosquitto-devel
66 This is a library that provides a means of implementing MQTT version 3
67 clients. MQTT provides a lightweight method of carrying out messaging
68 using a publish/subscribe model.
70 %package -n libmosquittopp
71 Summary: MQTT C++ client library
72 Group: Development/Libraries
74 %description -n libmosquittopp
75 This is a library that provides a means of implementing MQTT version 3
76 clients. MQTT provides a lightweight method of carrying out messaging
77 using a publish/subscribe model.
79 %package -n libmosquittopp-devel
80 Summary: MQTT C++ client library development files
81 Group: Development/Libraries
82 Requires: libmosquittopp = %{version}-%{release}
83 Requires: libmosquitto-devel = %{version}-%{release}
85 %description -n libmosquittopp-devel
86 This is a library that provides a means of implementing MQTT version 3
87 clients. MQTT provides a lightweight method of carrying out messaging
88 using a publish/subscribe model.
97 -DUSE_LIBWRAP:BOOL=ON \
98 -DWITH_BUNDLED_DEPS:BOOL=OFF \
99 -DWITH_SYSTEMD:BOOL=ON \
105 rm -rf $RPM_BUILD_ROOT
106 %{__make} -C build install \
107 DESTDIR=$RPM_BUILD_ROOT
109 for file in aclfile pskfile pwfile ; do
110 %{__rm} $RPM_BUILD_ROOT/etc/mosquitto/$file.example
111 :> $RPM_BUILD_ROOT/etc/%{name}/$file
115 rm -rf $RPM_BUILD_ROOT
118 %groupadd -g 293 -r mosquitto
119 %useradd -u 293 -r -g mosquitto -d %{_sysconfdir}/%{name} -s /sbin/nologin -c "Mosquitto Broker" mosquitto
121 if [ "$1" = "0" ]; then
122 %userremove mosquitto
123 %groupremove mosquitto
126 %post -n libmosquitto -p /sbin/ldconfig
127 %postun -n libmosquitto -p /sbin/ldconfig
129 %post -n libmosquittopp -p /sbin/ldconfig
130 %postun -n libmosquittopp -p /sbin/ldconfig
133 %defattr(644,root,root,755)
134 %doc LICENSE.txt CONTRIBUTING.md ChangeLog.txt README.md examples aclfile.example mosquitto.conf pskfile.example pwfile.example
135 %dir %{_sysconfdir}/%{name}
136 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/%{name}.conf
137 %attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/aclfile
138 %attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/pskfile
139 %attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/pwfile
140 %attr(755,root,root) %{_bindir}/mosquitto_ctrl
141 %attr(755,root,root) %{_bindir}/mosquitto_passwd
142 %attr(755,root,root) %{_sbindir}/mosquitto
143 %attr(755,root,root) %{_libdir}/mosquitto_dynamic_security.so
144 %{_mandir}/man1/mosquitto_ctrl.1*
145 %{_mandir}/man1/mosquitto_ctrl_dynsec.1*
146 %{_mandir}/man1/mosquitto_passwd.1*
147 %{_mandir}/man5/mosquitto.conf.5*
148 %{_mandir}/man7/mosquitto-tls.7*
149 %{_mandir}/man7/mqtt.7*
150 %{_mandir}/man8/mosquitto.8*
153 %defattr(644,root,root,755)
154 %attr(755,root,root) %{_bindir}/mosquitto_pub
155 %attr(755,root,root) %{_bindir}/mosquitto_rr
156 %attr(755,root,root) %{_bindir}/mosquitto_sub
157 %{_mandir}/man1/mosquitto_pub.1*
158 %{_mandir}/man1/mosquitto_rr.1*
159 %{_mandir}/man1/mosquitto_sub.1*
161 %files -n libmosquitto
162 %defattr(644,root,root,755)
163 %attr(755,root,root) %{_libdir}/libmosquitto.so.*.*.*
164 %ghost %{_libdir}/libmosquitto.so.1
166 %files -n libmosquitto-devel
167 %defattr(644,root,root,755)
168 %{_mandir}/man3/libmosquitto.3*
169 %{_libdir}/libmosquitto.so
170 %{_includedir}/mosquitto_broker.h
171 %{_includedir}/mosquitto.h
172 %{_includedir}/mosquitto_plugin.h
173 %{_includedir}/mqtt_protocol.h
174 %{_pkgconfigdir}/libmosquitto.pc
175 %{_pkgconfigdir}/libmosquittopp.pc
177 %files -n libmosquittopp
178 %defattr(644,root,root,755)
179 %attr(755,root,root) %{_libdir}/libmosquittopp.so.*.*.*
180 %ghost %{_libdir}/libmosquittopp.so.1
182 %files -n libmosquittopp-devel
183 %defattr(644,root,root,755)
184 %{_libdir}/libmosquittopp.so
185 %{_includedir}/mosquittopp.h