From 7b4333942bba7bc468ed5cae4a05ada7f75ee434 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Thu, 9 Jul 2026 17:27:55 +0000 Subject: [PATCH] mpd: fix build against fmt 12.2.0 Since fmt 12.2.0, is a shim that only includes , which does not declare fmt::format(). Building mpd 0.24.9 against it fails with: src/net/ToString.cxx:80:16: error: no member named 'format' in namespace 'fmt' src/lib/avahi/Publisher.cxx:37:9: error: no member named 'format' in namespace 'fmt' Add a patch that includes directly in the files that call fmt::format(). This mirrors the upstream fix (MPD commits 88d5b5248d71 and 109c26258b9d), extended to the files present in the 0.24.9 release that call fmt::format() but were not covered by those commits. Signed-off-by: Khem Raj --- ...port-use-fmt-format.h-not-fmt-core.h.patch | 208 ++++++++++++++++++ .../recipes-multimedia/musicpd/mpd_0.24.9.bb | 1 + 2 files changed, 209 insertions(+) create mode 100644 meta-multimedia/recipes-multimedia/musicpd/mpd/0001-libfmt-12.2.0-support-use-fmt-format.h-not-fmt-core.h.patch diff --git a/meta-multimedia/recipes-multimedia/musicpd/mpd/0001-libfmt-12.2.0-support-use-fmt-format.h-not-fmt-core.h.patch b/meta-multimedia/recipes-multimedia/musicpd/mpd/0001-libfmt-12.2.0-support-use-fmt-format.h-not-fmt-core.h.patch new file mode 100644 index 0000000000..cf5da582c8 --- /dev/null +++ b/meta-multimedia/recipes-multimedia/musicpd/mpd/0001-libfmt-12.2.0-support-use-fmt-format.h-not-fmt-core.h.patch @@ -0,0 +1,208 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Wed, 8 Jul 2026 00:00:00 +0000 +Subject: [PATCH] libfmt 12.2.0 support: use fmt/format.h not fmt/core.h + +Since libfmt 12.2.0, is a shim that only includes +, which does not declare fmt::format(). Building against it +fails with: + + src/net/ToString.cxx:80:16: error: no member named 'format' in namespace 'fmt' + src/lib/avahi/Publisher.cxx:37:9: error: no member named 'format' in namespace 'fmt' + +Include directly in the files that call fmt::format(). +This mirrors the upstream fix (MPD commits 88d5b5248d71 and 109c26258b9d) +extended to the files present in this release that call fmt::format(). + +Upstream-Status: Backport [https://github.com/MusicPlayerDaemon/MPD/commit/88d5b5248d71] +Signed-off-by: Khem Raj +--- +--- a/src/client/New.cxx ++++ b/src/client/New.cxx +@@ -17,7 +17,7 @@ + #include "Log.hxx" + #include "Version.h" + +-#include ++#include + + #include + +--- a/src/db/plugins/upnp/UpnpDatabasePlugin.cxx ++++ b/src/db/plugins/upnp/UpnpDatabasePlugin.cxx +@@ -24,7 +24,7 @@ + #include "util/StringSplit.hxx" + #include "config/Block.hxx" + +-#include ++#include + + #include + #include +--- a/src/db/update/Playlist.cxx ++++ b/src/db/update/Playlist.cxx +@@ -20,7 +20,7 @@ + #include "fs/Traits.hxx" + #include "Log.hxx" + +-#include ++#include + + inline void + UpdateWalk::UpdatePlaylistFile(Directory &directory, +--- a/src/input/plugins/AlsaInputPlugin.cxx ++++ b/src/input/plugins/AlsaInputPlugin.cxx +@@ -27,7 +27,7 @@ + + #include + +-#include ++#include + + #include + +--- a/src/input/plugins/QobuzClient.cxx ++++ b/src/input/plugins/QobuzClient.cxx +@@ -4,7 +4,7 @@ + #include "QobuzClient.hxx" + #include "lib/crypto/MD5.hxx" + +-#include ++#include + + #include + #include +--- a/src/input/plugins/QobuzLoginRequest.cxx ++++ b/src/input/plugins/QobuzLoginRequest.cxx +@@ -6,7 +6,7 @@ + #include "QobuzSession.hxx" + #include "lib/curl/Form.hxx" + +-#include ++#include + #include + + #include +--- a/src/input/plugins/QobuzTrackRequest.cxx ++++ b/src/input/plugins/QobuzTrackRequest.cxx +@@ -5,7 +5,7 @@ + #include "QobuzErrorParser.hxx" + #include "QobuzClient.hxx" + +-#include ++#include + #include + + using std::string_view_literals::operator""sv; +--- a/src/lib/avahi/Publisher.cxx ++++ b/src/lib/avahi/Publisher.cxx +@@ -13,7 +13,7 @@ + #include + #include + +-#include ++#include + + #include + +--- a/src/lib/nfs/FileReader.cxx ++++ b/src/lib/nfs/FileReader.cxx +@@ -10,7 +10,7 @@ + + #include // for struct nfs_stat_64 + +-#include ++#include + + #include + #include +--- a/src/output/Init.cxx ++++ b/src/output/Init.cxx +@@ -24,7 +24,7 @@ + #include "util/StringAPI.hxx" + #include "Log.hxx" + +-#include ++#include + + #include + #include +--- a/src/output/plugins/httpd/HttpdClient.cxx ++++ b/src/output/plugins/httpd/HttpdClient.cxx +@@ -13,7 +13,7 @@ + #include "util/StringSplit.hxx" + #include "Log.hxx" + +-#include ++#include + + #include + +--- a/src/output/plugins/httpd/IcyMetaDataServer.cxx ++++ b/src/output/plugins/httpd/IcyMetaDataServer.cxx +@@ -5,7 +5,7 @@ + #include "tag/Tag.hxx" + #include "util/TruncateString.hxx" + +-#include ++#include + + #include + +--- a/src/song/AddedSinceSongFilter.cxx ++++ b/src/song/AddedSinceSongFilter.cxx +@@ -6,7 +6,7 @@ + #include "time/ISO8601.hxx" + #include "util/StringBuffer.hxx" + +-#include ++#include + + using std::string_view_literals::operator""sv; + +--- a/src/song/AudioFormatSongFilter.cxx ++++ b/src/song/AudioFormatSongFilter.cxx +@@ -5,7 +5,7 @@ + #include "LightSong.hxx" + #include "util/StringBuffer.hxx" + +-#include ++#include + + using std::string_view_literals::operator""sv; + +--- a/src/song/ModifiedSinceSongFilter.cxx ++++ b/src/song/ModifiedSinceSongFilter.cxx +@@ -6,7 +6,7 @@ + #include "time/ISO8601.hxx" + #include "util/StringBuffer.hxx" + +-#include ++#include + + using std::string_view_literals::operator""sv; + +--- a/src/storage/plugins/NfsStorage.cxx ++++ b/src/storage/plugins/NfsStorage.cxx +@@ -28,7 +28,7 @@ + #include + } + +-#include ++#include + + #include + #include +--- a/src/net/ToString.cxx ++++ b/src/net/ToString.cxx +@@ -6,7 +6,7 @@ + #include "SocketAddress.hxx" + #include "IPv4Address.hxx" + +-#include ++#include + + #include + #include +-- +2.43.0 diff --git a/meta-multimedia/recipes-multimedia/musicpd/mpd_0.24.9.bb b/meta-multimedia/recipes-multimedia/musicpd/mpd_0.24.9.bb index 0c3d672949..b4d6604b21 100644 --- a/meta-multimedia/recipes-multimedia/musicpd/mpd_0.24.9.bb +++ b/meta-multimedia/recipes-multimedia/musicpd/mpd_0.24.9.bb @@ -20,6 +20,7 @@ DEPENDS += " \ SRC_URI = "git://github.com/MusicPlayerDaemon/MPD;branch=master;protocol=https;tag=v${PV} \ file://mpd.conf.in \ + file://0001-libfmt-12.2.0-support-use-fmt-format.h-not-fmt-core.h.patch \ " SRCREV = "7a9afa059e95668c912f779219ee8fe1e44dd2aa"