mirror of
https://github.com/openembedded/meta-openembedded.git
synced 2026-07-17 04:37:19 +00:00
f45c615323
fmt 12.2.0 turns <fmt/core.h> into a shim that only pulls in <fmt/base.h>, which no longer declares fmt::format() and no longer drags in <cstring> transitively. gerbera 3.0.0 relied on both, so do_compile fails first with: src/exceptions.cc:37:31: error: no member named 'format' in namespace 'fmt' and, once that is addressed, with a second wave of: src/util/thread_runner.h:194:68: error: no member named 'strerror' in namespace 'std' src/content/inotify/mt_inotify.cc:163:13: error: no member named 'memcpy' in namespace 'std' src/util/url_utils.cc:144:24: error: no member named 'strchr' in namespace 'std' Add two backport patches: * 0001 switches the central headers exceptions.h and search_handler.h from <fmt/core.h> to <fmt/format.h> (upstream commit 9507706136fd). * 0002 adds an explicit #include <cstring> to every translation unit that uses std::strerror/std::memcpy/std::strchr (based on upstream commit 7caa9ae9ebf5, extended to cover all affected files in this release). Neither fix is in any released gerbera tag (both are master-only), so a version bump would not help; backporting is the least invasive option. Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>