deleted file mode 100644
@@ -1,38 +0,0 @@
-From 468b52958ded2dd942386d52e456ed259875b6e3 Mon Sep 17 00:00:00 2001
-From: Chris Robinson <chris.kcat@gmail.com>
-Date: Fri, 18 Jul 2025 01:57:32 -0700
-Subject: [PATCH] Add missing include for malloc/free
-
-Upstream-Status: Backport [https://github.com/kcat/openal-soft/commit/6b69e11867e6498f244da95de7a3d6c25f79f205]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- fmt-11.1.1/include/fmt/format.h | 5 +++--
- 1 file changed, 3 insertions(+), 2 deletions(-)
-
-diff --git a/fmt-11.1.1/include/fmt/format.h b/fmt-11.1.1/include/fmt/format.h
-index d1b83d18..ae5700ff 100644
---- a/fmt-11.1.1/include/fmt/format.h
-+++ b/fmt-11.1.1/include/fmt/format.h
-@@ -44,6 +44,7 @@
- # include <cmath> // std::signbit
- # include <cstddef> // std::byte
- # include <cstdint> // uint32_t
-+# include <cstdlib> // std::malloc, std::free
- # include <cstring> // std::memcpy
- # include <limits> // std::numeric_limits
- # include <new> // std::bad_alloc
-@@ -742,12 +743,12 @@ template <typename T> struct allocator {
-
- T* allocate(size_t n) {
- FMT_ASSERT(n <= max_value<size_t>() / sizeof(T), "");
-- T* p = static_cast<T*>(malloc(n * sizeof(T)));
-+ T* p = static_cast<T*>(std::malloc(n * sizeof(T)));
- if (!p) FMT_THROW(std::bad_alloc());
- return p;
- }
-
-- void deallocate(T* p, size_t) { free(p); }
-+ void deallocate(T* p, size_t) { std::free(p); }
- };
-
- } // namespace detail
similarity index 64%
rename from meta-multimedia/recipes-multimedia/openal/openal-soft_1.24.3.bb
rename to meta-multimedia/recipes-multimedia/openal/openal-soft_1.25.2.bb
@@ -7,10 +7,16 @@ inherit cmake pkgconfig
DEPENDS = "zlib libsndfile1"
-SRCREV = "dc7d7054a5b4f3bec1dc23a42fd616a0847af948"
-SRC_URI = "git://github.com/kcat/openal-soft.git;protocol=https;branch=master \
- file://0001-Add-missing-include-for-malloc-free.patch \
- "
+SRCREV = "b2c48f7718ef3fcf67921a8b6534c4914e328970"
+SRC_URI = "git://github.com/kcat/openal-soft.git;protocol=https;branch=master"
+
+# openal-soft 1.25.x annotates realtime-critical mixer functions with
+# [[clang::nonblocking]] and, even with ALSOFT_WERROR=OFF, hardcodes
+# -Werror=function-effects for CXX. clang-22's function-effects analysis
+# then fails the build on calls into non-nonblocking std::variant::emplace.
+# Pre-seed the feature-detection cache var so neither -Wfunction-effects
+# nor its -Werror promotion is added.
+EXTRA_OECMAKE:append:toolchain-clang = " -DHAVE_WFUNCTION_EFFECTS=OFF"
PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'alsa pipewire pulseaudio', d)}"
PACKAGECONFIG[alsa] = "-DALSOFT_BACKEND_ALSA=ON,-DALSOFT_BACKEND_ALSA=OFF,alsa-lib"
Upstream changes: * 1.25.x modernizes the mixer, bundles fmt 11.2.0 (was 11.1.1), and annotates realtime-critical functions with [[clang::nonblocking]]. Drop 0001-Add-missing-include-for-malloc-free.patch: it backported a <cstdlib> include into the bundled fmt-11.1.1 copy, which is already present in the fmt-11.2.0 now bundled by 1.25.2. openal-soft hardcodes -Werror=function-effects for C++ even with ALSOFT_WERROR=OFF. clang-22's function-effects analysis then fails the build on calls from nonblocking mixer code into non-nonblocking std::variant::emplace. Pre-seed HAVE_WFUNCTION_EFFECTS=OFF (clang only) so neither -Wfunction-effects nor its -Werror promotion is added. Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com> --- ...-Add-missing-include-for-malloc-free.patch | 38 ------------------- ...l-soft_1.24.3.bb => openal-soft_1.25.2.bb} | 14 +++++-- 2 files changed, 10 insertions(+), 42 deletions(-) delete mode 100644 meta-multimedia/recipes-multimedia/openal/openal-soft/0001-Add-missing-include-for-malloc-free.patch rename meta-multimedia/recipes-multimedia/openal/{openal-soft_1.24.3.bb => openal-soft_1.25.2.bb} (64%)