[openal-soft] Update to 1.24.1 (#42397)

This commit is contained in:
Darryl Pogue 2024-11-28 11:46:33 -08:00 committed by GitHub
parent 389e18e838
commit 94fa6f7d56
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
6 changed files with 8 additions and 135 deletions

View File

@ -1,40 +0,0 @@
From 187ed2df39ab1f5ea92b97d4d3e0894da87e297b Mon Sep 17 00:00:00 2001
From: Darryl Pogue <darryl@dpogue.ca>
Date: Mon, 25 Nov 2024 19:01:03 -0800
Subject: [PATCH] vcpkg fixup for finding CppWinRT
---
CMakeLists.txt | 17 ++---------------
1 file changed, 2 insertions(+), 15 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 412e8ae7..95b5d758 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1414,21 +1414,8 @@ else()
${MATH_LIB})
if(ALSOFT_UWP)
- set(ALSOFT_CPPWINRT_VERSION "2.0.230706.1" CACHE STRING "The soft-oal default cppwinrt version")
-
- find_program(NUGET_EXE NAMES nuget)
- if(NOT NUGET_EXE)
- message("NUGET.EXE not found.")
- message(FATAL_ERROR "Please install this executable, and run CMake again.")
- endif()
-
- exec_program(${NUGET_EXE}
- ARGS install "Microsoft.Windows.CppWinRT" -Version ${ALSOFT_CPPWINRT_VERSION} -ExcludeVersion -OutputDirectory "\"${CMAKE_BINARY_DIR}/packages\"")
-
- set_target_properties(${IMPL_TARGET} PROPERTIES
- VS_PROJECT_IMPORT ${CMAKE_BINARY_DIR}/packages/Microsoft.Windows.CppWinRT/build/native/Microsoft.Windows.CppWinRT.props
- )
- target_link_libraries(${IMPL_TARGET} PRIVATE ${CMAKE_BINARY_DIR}/packages/Microsoft.Windows.CppWinRT/build/native/Microsoft.Windows.CppWinRT.targets)
+ find_package(cppwinrt CONFIG REQUIRED)
+ target_link_libraries(${IMPL_TARGET} PRIVATE Microsoft::CppWinRT)
endif()
if(NOT WIN32 AND NOT APPLE)
--
2.47.1

View File

@ -1,89 +0,0 @@
From 96f62e37e9ae015ee104e568cb57ea0d8964a84b Mon Sep 17 00:00:00 2001
From: Darryl Pogue <darryl@dpogue.ca>
Date: Sat, 23 Nov 2024 15:39:13 -0800
Subject: [PATCH] Only use noexcept in public headers on >= C++11
This resolves issues consuming openal-soft in projects that don't
explicitly specify a C++ standard of C++11 or newer.
This also handles the fact that __cplusplus is not set properly in MSVC
(always claiming to be 199711L) which prevented both the C++11 noexcept
and the C++17 noexcept annotations from taking effect.
Ref: https://github.com/kcat/openal-soft/pull/1071
---
include/AL/al.h | 14 +++++++++++++-
include/AL/alc.h | 14 +++++++++++++-
2 files changed, 26 insertions(+), 2 deletions(-)
diff --git a/include/AL/al.h b/include/AL/al.h
index e9f8f3b1..a4e3ad51 100644
--- a/include/AL/al.h
+++ b/include/AL/al.h
@@ -5,9 +5,19 @@
#ifdef __cplusplus
extern "C" {
+#ifdef _MSVC_LANG
+#define AL_CPLUSPLUS _MSVC_LANG
+#else
+#define AL_CPLUSPLUS __cplusplus
+#endif
+
#ifndef AL_DISABLE_NOEXCEPT
+#if AL_CPLUSPLUS >= 201103L
#define AL_API_NOEXCEPT noexcept
-#if __cplusplus >= 201703L
+#else
+#define AL_API_NOEXCEPT
+#endif
+#if AL_CPLUSPLUS >= 201703L
#define AL_API_NOEXCEPT17 noexcept
#else
#define AL_API_NOEXCEPT17
@@ -19,6 +29,8 @@ extern "C" {
#define AL_API_NOEXCEPT17
#endif
+#undef AL_CPLUSPLUS
+
#else /* __cplusplus */
#define AL_API_NOEXCEPT
diff --git a/include/AL/alc.h b/include/AL/alc.h
index 3311b57f..d048ca04 100644
--- a/include/AL/alc.h
+++ b/include/AL/alc.h
@@ -5,9 +5,19 @@
#ifdef __cplusplus
extern "C" {
+#ifdef _MSVC_LANG
+#define ALC_CPLUSPLUS _MSVC_LANG
+#else
+#define ALC_CPLUSPLUS __cplusplus
+#endif
+
#ifndef AL_DISABLE_NOEXCEPT
+#if ALC_CPLUSPLUS >= 201103L
#define ALC_API_NOEXCEPT noexcept
-#if __cplusplus >= 201703L
+#else
+#define ALC_API_NOEXCEPT
+#endif
+#if ALC_CPLUSPLUS >= 201703L
#define ALC_API_NOEXCEPT17 noexcept
#else
#define ALC_API_NOEXCEPT17
@@ -19,6 +29,8 @@ extern "C" {
#define ALC_API_NOEXCEPT17
#endif
+#undef ALC_CPLUSPLUS
+
#else /* __cplusplus */
#define ALC_API_NOEXCEPT
--
2.47.0

View File

@ -2,11 +2,8 @@ vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO kcat/openal-soft
REF ${VERSION}
SHA512 6fdb5e02f4d4e2d483bccf69121dda9b691170e88d301f53b5e3b3ab196541d7b0b23a868acdf85f6dacac9d8508079f67cb7d733e186a13a66ee70ecdd813f0
SHA512 a60e1969bb5678219d8a7ae036d7081d61faa176689ac444802a45f4081aff07a6315575c02784bfce2ec6149c160270082ae076be668f32d79a6fac06513be0
HEAD_REF master
PATCHES
96f62e37e9ae015ee104e568cb57ea0d8964a84b.patch # Merged upstream, remove in next version
187ed2df39ab1f5ea92b97d4d3e0894da87e297b.patch # Fix CppWinRT for UWP
)
vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS

View File

@ -1,6 +1,6 @@
{
"name": "openal-soft",
"version": "1.24.0",
"version": "1.24.1",
"description": "OpenAL Soft is an LGPL-licensed, cross-platform, software implementation of the OpenAL 3D audio API.",
"homepage": "https://github.com/kcat/openal-soft",
"license": "LGPL-2.0-or-later",

View File

@ -6621,7 +6621,7 @@
"port-version": 0
},
"openal-soft": {
"baseline": "1.24.0",
"baseline": "1.24.1",
"port-version": 0
},
"openblas": {

View File

@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "a204aed6d6c40cb7978806f705a7bde193b275e6",
"version": "1.24.1",
"port-version": 0
},
{
"git-tree": "137257eb7378d83836adecdaf83807ef8f7f120c",
"version": "1.24.0",