Skip to content
Snippets Groups Projects
Commit 56c2225c authored by Bernhard Rosenkränzer's avatar Bernhard Rosenkränzer
Browse files

Add mosquitto 2.0.7 recipe

Add mosquitto 2.0.7. This recipe is in sync with the one recently added
to upstream meta-networking and should be removed once we rebase to a
newer Yocto that has commit 9428a09002a0a1058b155ff767bd5de5c8929998.

Fixes https://git.ostc-eu.org/OSTC/planning/core-os/-/issues/30



Signed-off-by: default avatarBernhard Rosenkränzer <bernhard.rosenkraenzer.ext@huawei.com>
parent 893679f0
No related branches found
No related tags found
No related merge requests found
Upstream-Status: Submitted [https://github.com/eclipse/mosquitto/pull/1571]
From 3fe5468f1bdca1bff1d18cf43c9e338f41aa9e32 Mon Sep 17 00:00:00 2001
From: Gianfranco Costamagna <costamagnagianfranco@yahoo.it>
Date: Wed, 22 Jan 2020 12:39:49 +0100
Subject: [PATCH] Add dynamic symbols linking with cmake too
Signed-off-by: Gianfranco Costamagna <costamagnagianfranco@yahoo.it>
---
lib/CMakeLists.txt | 2 ++
1 file changed, 2 insertions(+)
--- a/lib/CMakeLists.txt
+++ b/lib/CMakeLists.txt
@@ -94,6 +94,8 @@
OUTPUT_NAME mosquitto
VERSION ${VERSION}
SOVERSION 1
+ LINK_DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/linker.version
+ LINK_FLAGS "-Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/linker.version"
)
install(TARGETS libmosquitto RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}")
#! /bin/sh
# Based on the Debian initscript for mosquitto
### BEGIN INIT INFO
# Provides: mosquitto
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: mosquitto MQTT message broker
# Description:
# This is a message broker that supports version 3.1/3.1.1 of the MQ Telemetry
# Transport (MQTT) protocol.
#
# MQTT provides a method of carrying out messaging using a publish/subscribe
# model. It is lightweight, both in terms of bandwidth usage and ease of
# implementation. This makes it particularly useful at the edge of the network
# where a sensor or other simple device may be implemented using an arduino for
# example.
### END INIT INFO
set -e
PIDFILE=@LOCALSTATEDIR@/run/mosquitto.pid
DAEMON=@SBINDIR@/mosquitto
# start and stop the mosquitto MQTT message broker
test -x ${DAEMON} || exit 0
umask 022
. @SYSCONFDIR@/init.d/functions
export PATH="${PATH:+$PATH:}@SBINDIR@:@BASE_SBINDIR@"
case "$1" in
start)
echo "Starting Mosquitto message broker" "mosquitto"
if start-stop-daemon --start --quiet --oknodo --background --make-pidfile --pidfile ${PIDFILE} --exec ${DAEMON} -- -c @SYSCONFDIR@/mosquitto/mosquitto.conf ; then
exit 0
else
exit 1
fi
;;
stop)
echo "Stopping Mosquitto message broker" "mosquitto"
if start-stop-daemon --stop --quiet --oknodo --pidfile ${PIDFILE}; then
rm -f ${PIDFILE}
exit 0
else
exit 1
fi
;;
reload|force-reload)
if [ -f ${PIDFILE} ] ; then
echo "Reloading configuration for mosquitto"
pid=`cat ${PIDFILE}`
kill -HUP $pid
else
echo "mosquitto does not seem to be running"
fi
;;
restart)
echo "Restarting Mosquitto message broker" "mosquitto"
if start-stop-daemon --stop --quiet --oknodo --retry 30 --pidfile ${PIDFILE}; then
rm -f ${PIDFILE}
fi
if start-stop-daemon --start --quiet --oknodo --background --make-pidfile --pidfile ${PIDFILE} --exec ${DAEMON} -- -c @SYSCONFDIR@/mosquitto/mosquitto.conf ; then
exit 0
else
exit 1
fi
;;
status)
status ${DAEMON} && exit 0 || exit $?
;;
*)
echo "Usage: $0 {start|stop|reload|force-reload|restart|status}"
exit 1
esac
exit 0
SUMMARY = "Open source MQTT implementation"
DESCRIPTION = "Mosquitto is an open source (Eclipse licensed) message broker \
that implements the MQ Telemetry Transport protocol version 3.1, 3.1.1 and \
5, providing both an MQTT broker and several command-line clients. MQTT \
provides a lightweight method of carrying out messaging using a \
publish/subscribe model. "
HOMEPAGE = "http://mosquitto.org/"
SECTION = "console/network"
LICENSE = "EPL-2.0 | EDL-1.0"
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=ca9a8f366c6babf593e374d0d7d58749 \
file://edl-v10;md5=c09f121939f063aeb5235972be8c722c \
file://epl-v20;md5=d9fc0efef5228704e7f5b37f27192723 \
file://notice.html;md5=541f8f37af492858dab8d2c1b69ede69 \
"
DEPENDS = "uthash cjson dlt-daemon"
SRC_URI = "http://mosquitto.org/files/source/mosquitto-${PV}.tar.gz \
file://mosquitto.init \
file://1571.patch \
"
SRC_URI[md5sum] = "56de4e27533ab53697245809feea95bf"
SRC_URI[sha256sum] = "a98054f0b8161588975ef24e1d467550d3935f4c16ccee63ecb623248a28356e"
inherit systemd update-rc.d useradd cmake
PACKAGECONFIG ??= "ssl dlt websockets \
${@bb.utils.filter('DISTRO_FEATURES','systemd', d)} \
"
PACKAGECONFIG[manpages] = "-DDOCUMENTATION=ON,-DDOCUMENTATION=OFF,libxslt-native docbook-xsl-stylesheets-native"
PACKAGECONFIG[dns-srv] = "-DWITH_SRV=ON,-DWITH_SRV=OFF,c-ares"
PACKAGECONFIG[ssl] = "-DWITH_TLS=ON -DWITH_TLS_PSK=ON -DWITH_EC=ON,-DWITH_TLS=OFF -DWITH_TLS_PSK=OFF -DWITH_EC=OFF,openssl"
PACKAGECONFIG[systemd] = "-DWITH_SYSTEMD=ON,-DWITH_SYSTEMD=OFF,systemd"
PACKAGECONFIG[websockets] = "-DWITH_WEBSOCKETS=ON,-DWITH_WEBSOCKETS=OFF,libwebsockets"
PACKAGECONFIG[dlt] = "-DWITH_DLT=ON,-DWITH_DLT=OFF,dlt-daemon"
EXTRA_OECMAKE = " \
-DWITH_BUNDLED_DEPS=OFF \
-DWITH_ADNS=ON \
"
do_install_append() {
install -d ${D}${systemd_unitdir}/system/
install -m 0644 ${S}/service/systemd/mosquitto.service.notify ${D}${systemd_unitdir}/system/mosquitto.service
install -d ${D}${sysconfdir}/init.d/
install -m 0755 ${WORKDIR}/mosquitto.init ${D}${sysconfdir}/init.d/mosquitto
sed -i -e 's,@SBINDIR@,${sbindir},g' \
-e 's,@BASE_SBINDIR@,${base_sbindir},g' \
-e 's,@LOCALSTATEDIR@,${localstatedir},g' \
-e 's,@SYSCONFDIR@,${sysconfdir},g' \
${D}${sysconfdir}/init.d/mosquitto
}
PACKAGES += "libmosquitto1 libmosquittopp1 ${PN}-clients"
PACKAGE_BEFORE_PN = "${PN}-examples"
FILES_${PN} = "${sbindir}/mosquitto \
${bindir}/mosquitto_passwd \
${bindir}/mosquitto_ctrl \
${libdir}/mosquitto_dynamic_security.so \
${sysconfdir}/mosquitto \
${sysconfdir}/init.d \
${systemd_unitdir}/system/mosquitto.service \
"
CONFFILES_${PN} += "${sysconfdir}/mosquitto/mosquitto.conf"
FILES_libmosquitto1 = "${libdir}/libmosquitto.so.*"
FILES_libmosquittopp1 = "${libdir}/libmosquittopp.so.*"
FILES_${PN}-clients = "${bindir}/mosquitto_pub \
${bindir}/mosquitto_sub \
${bindir}/mosquitto_rr \
"
FILES_${PN}-examples = "${sysconfdir}/mosquitto/*.example"
SYSTEMD_SERVICE_${PN} = "mosquitto.service"
INITSCRIPT_NAME = "mosquitto"
INITSCRIPT_PARAMS = "defaults 30"
USERADD_PACKAGES = "${PN}"
USERADD_PARAM_${PN} = "--system --no-create-home --shell /bin/false \
--user-group mosquitto"
BBCLASSEXTEND += "native nativesdk"
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment