mirror of
https://github.com/openembedded/meta-openembedded.git
synced 2026-08-30 00:33:19 +00:00
openal-soft: upgrade 1.24.3 -> 1.25.2
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>
This commit is contained in:
-38
@@ -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
|
||||
+10
-4
@@ -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"
|
||||
Reference in New Issue
Block a user