14 Commits

Author SHA1 Message Date
Andrej Kozemcak
5ac7358b85
paho-mqtt-cpp: upgrade 1.5.3 -> 1.6.0
Changelog:
  https://github.com/eclipse-paho/paho.mqtt.cpp/releases/tag/v1.6.0

Changes:
- Bumped Paho C submodule to v1.3.16 and updated directory name to externals/paho.mqtt.c
- Some significant performance increases (lower latency) for connect and publish
- Fixed topic_matcher and topic_filter to properly match parent with multi-level ('#') wildcard.
- Slight optimization of topic_filter to do simple string comparison if the filter does not contain wildcards.
- Set a minimum version for Paho C in the CMake file. Report the version found.
- .deb version properly set, and add architecture name to .deb file
- remove const from connect_options_builder 'move' constructor
- fix potential deadlock in thread_queue on capacity increase.
- Incorrect default retain value in a will options constructor
- prevent undefined behaviour on empty topic matching
- Sync reconnect example crashes on first reconnect

Signed-off-by: Andrej Kozemcak <andrej.kozemcak@siemens.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2026-03-17 13:25:19 -07:00
Gyorgy Sarvari
106206da12
paho-mqtt-cpp: add back SRCREV
SRCREV was removed accidentally during last update - add it back.

Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2025-06-26 07:26:20 -07:00
Alexander Kanavin
fc78d37ff0
meta-openembedded/all: adapt to UNPACKDIR changes
Please see
https://git.yoctoproject.org/poky/commit/?id=4dd321f8b83afecd962393101b2a6861275b5265
for what changes are needed, and sed commands that can be used to make them en masse.

I've verified that bitbake -c patch world works with these, but did not run a world
build; the majority of recipes shouldn't need further fixups, but if there are
some that still fall out, they can be fixed in followups.

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2025-06-25 06:44:52 -07:00
Leon Anavi
eebf8c78db
paho-mqtt-cpp: Upgrade 1.4.1 -> 1.5.3
Upgrade to release 1.5.3:

- Fix the bundled Paho C build foc C23 compilers by forcing C99
  compliance in CMake build
- Code base updated to to C++17
- Now a C++17 compiler is required to compile the library
- CMake minimum required version raised to v3.13
- Need a fairly recent CMake for C++17 support (>= v3.12)
- CMake v3.13 allows INSTALL(TARGETS) to work outside the current
  directory.
- Clients always created for v5 persistence format, making it
  universal for any connection.
- If the application specifies a version it is kept as a hint for
  default connections.
- The version for the connection should be specified in the connect
  options.
- The create_options now have all the parameters to create a client.
- Can specify Server URL, Client ID, and persistence in the create
  options.
- New client constructor that takes just the options object
- The client caches a const create_options struct with all the
  creation parameters
- Client creation internally simplified without breaking the public
  API
- Expanded the message constmer to be a full client "event" consumer.
- The events are for connected, connection_lost, disconnected,
  message arrived, and application shutdown.
- The application can get client state change notifications without
  resorting to callbacks.
- There's a new persistence_type (std::variant) that can hold any
  of the persistence specifiers (none, file directory, or user
  interface).
- Most of the class static constants are now constexpr.
- Removed the fake ReasonCode::MQTTPP_V3_CODE. Now all reason codes
  in a v3 connection are SUCCESS.
- The mqtt::exception checks if the 'rc' return code actually
  contains a reason code error, amd if so, sets it as the reason
  code.
- property can now report the typeid of its contained value.
- The properties list implements a const iterator
- Added a to_string() and operator<<() for reason codes.
- thread_queue is now closable.
- Added documentation for UNIX domain sockets coming in with Paho
  C v1.3.14
- Removed the manual implementation of make_unique<>()
- Added create_options assignment operators.
- Fixed some corner cases for topic_filter::matches()
- Cleaned up and fixed a number of example apps.
- Most apps now except a server URI from the command line
- 'data_publish' example uses C++17 std::filesystem for creating
  a file-based encrypted persistence for messages.
- Updated local CI (buildtst.sh) for current compilers and unit tests.
- Reorganized the source repository
- Completely reformat the sources and added a .clang-format file (a
  project master and a slightly-different one for headers).

Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2025-06-25 06:44:51 -07:00
Khem Raj
9850a4a000 paho-mqtt-cpp: Use system paho-mqtt-c
It was an overisight during upgrade

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Cc: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
2024-09-12 23:21:25 -07:00
Khem Raj
d4f8a30743 paho-mqtt-cpp: Move to tip of 1.4.x branch
- User git submodule fetcher
- Disable building examples and enable MQTT C module

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2024-09-09 08:00:09 -07:00
Khem Raj
0a37700632
paho-mqtt-cpp: Upgrade to 1.4.1 release
License file LICENSE is added, therefore use that for checksums
license still remains same.

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2024-09-04 20:48:44 -07:00
Wang Mingyu
3f844d4136
paho-mqtt-cpp: upgrade 1.3.1 -> 1.3.2
Changelog:
==========
-Fixed generator expression for older CMake
-Bad LWT message in async_publish.cpp sample.

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2023-12-18 22:17:24 -08:00
Wang Mingyu
e4fa64c596
paho-mqtt-cpp: upgrade 1.2.0 -> 1.3.1
0001-cmake-Use-CMAKE_INSTALL_LIBDIR-and-CMAKE_INSTALL_BIN.patch
refreshed for 1.3.1

License-Update: Updated license to EPL-v2.0

Changelog:
============
-#462 Fix version string for version v1.3.x
-Fixed building and using library as DLL on Windows with MSVC
-Updated License to Eclipse Public License v2.0
-Updated create and connect options to better deal with MQTT protocol version
-Defaulting connect version to v5 if specified in create options.
-Added a topic_filter class to match a single filter to specific topics.
-Added a topic_matcher class to create a collection of items in a trie structure
 that can contain items tied to topic filters. (Useful for queues or callbacks
 per-subscription topic).
-Minor tweaks to prepare for C++20
-Support for Catch2 v3.x for unit tests (v2.x also still supported).
-Changed the sample apps to use the newer "mqtt://" schemas.
-Connect option initializers for v5 and WebSockets.

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2023-11-28 08:55:40 -08:00
Martin Jansa
be8c765c7c *.patch: add Upstream-Status to all patches
There is new patch-status QA check in oe-core:
https://git.openembedded.org/openembedded-core/commit/?id=76a685bfcf927593eac67157762a53259089ea8a

This is temporary work around just to hide _many_ warnings from
optional patch-status (if you add it to WARN_QA).

This just added
Upstream-Status: Pending
everywhere without actually investigating what's the proper status.

This is just to hide current QA warnings and to catch new .patch files being
added without Upstream-Status, but the number of Pending patches is now terrible:

5 (26%) 	meta-xfce
6 (50%) 	meta-perl
15 (42%)        meta-webserver
21 (36%)        meta-gnome
25 (57%)        meta-filesystems
26 (43%)        meta-initramfs
45 (45%)        meta-python
47 (55%)        meta-multimedia
312 (63%)       meta-networking
756 (61%)       meta-oe

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2023-06-21 09:15:20 -07:00
Peter Kjellerstedt
2e0a581bee recipes: Remove double protocol= from SRC_URIs
With the exception of paho-mqtt-cpp, the double protocol= attributes
were added to the SRC_URIs when protocol=https was added to all SRC_URIs
fetching from github.com in commit b402a3076f (recipes: Update SRC_URI
branch and protocols).

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2023-04-05 15:56:47 -07:00
Peter Kjellerstedt
71e75357af paho-mqtt-cpp: Improve the license information
Replace the about.html and notice.html files in LIC_FILES_CHKSUM with
the license information from one of the source files. Including HTML
files in LIC_FILES_CHKSUM complicates things when the license files that
OE collects are, e.g., later processed and presented to a user where the
expectation is that they are plain text files.

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2023-04-05 15:56:47 -07:00
Khem Raj
34437d9a22 paho-mqtt-cpp: Use CMAKE_INSTALL_LIBDIR in cmake
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2022-03-21 08:25:11 -07:00
Matthias Klein
4641227da8 paho-mqtt-cpp: new package
Signed-off-by: Matthias Klein <matthias@extraklein.de>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-11-18 11:07:05 -08:00