Merge branch 'dev' into dev-0.12

This commit is contained in:
David Reid
2026-07-11 10:49:33 +10:00
2 changed files with 57 additions and 39 deletions
+45 -39
View File
@@ -573,59 +573,65 @@ endif()
# SteamAudio has an annoying SDK setup. In the lib folder there is a folder for each platform. We need to specify the
# platform we're compiling for.
if(CMAKE_SYSTEM_PROCESSOR MATCHES "x86_64")
# Assume 64-bit. Now we need to check if it's for Windows or Linux.
string(TOLOWER "${CMAKE_SYSTEM_PROCESSOR}" MINIAUDIO_PROCESSOR_LOWER)
set(STEAMAUDIO_ARCH "")
if(MINIAUDIO_PROCESSOR_LOWER MATCHES "^(x86_64|amd64)$")
if(WIN32)
set(STEAMAUDIO_ARCH windows-x64)
else()
elseif(UNIX AND NOT APPLE)
set(STEAMAUDIO_ARCH linux-x64)
endif()
else()
# Assume 32-bit. Now we need to check if it's for Windows or Linux.
elseif(MINIAUDIO_PROCESSOR_LOWER MATCHES "^(x86|i[3-6]86)$")
if(WIN32)
set(STEAMAUDIO_ARCH windows-x86)
else()
elseif(UNIX AND NOT APPLE)
set(STEAMAUDIO_ARCH linux-x86)
endif()
endif()
# When searching for SteamAudio, we'll support installing it in the external/steamaudio directory.
set(STEAMAUDIO_FIND_LIBRARY_HINTS)
list(APPEND STEAMAUDIO_FIND_LIBRARY_HINTS ${CMAKE_CURRENT_SOURCE_DIR}/external/steamaudio/lib/${STEAMAUDIO_ARCH})
if(STEAMAUDIO_ARCH)
# When searching for SteamAudio, we'll support installing it in the external/steamaudio directory.
set(STEAMAUDIO_FIND_LIBRARY_HINTS)
list(APPEND STEAMAUDIO_FIND_LIBRARY_HINTS ${CMAKE_CURRENT_SOURCE_DIR}/external/steamaudio/lib/${STEAMAUDIO_ARCH})
if(WIN32)
# No standard locations on Windows.
else()
list(APPEND STEAMAUDIO_FIND_LIBRARY_HINTS /opt/steamaudio/lib/${STEAMAUDIO_ARCH})
list(APPEND STEAMAUDIO_FIND_LIBRARY_HINTS /usr/local/steamaudio/lib/${STEAMAUDIO_ARCH})
endif()
set(STEAMAUDIO_FIND_HEADER_HINTS)
list(APPEND STEAMAUDIO_FIND_HEADER_HINTS ${CMAKE_CURRENT_SOURCE_DIR}/external/steamaudio/include)
if(WIN32)
# No standard locations on Windows.
else()
list(APPEND STEAMAUDIO_FIND_HEADER_HINTS /opt/steamaudio/include)
list(APPEND STEAMAUDIO_FIND_HEADER_HINTS /usr/local/steamaudio/include)
endif()
find_library(STEAMAUDIO_LIBRARY NAMES phonon HINTS ${STEAMAUDIO_FIND_LIBRARY_HINTS})
if(STEAMAUDIO_LIBRARY)
find_path(STEAMAUDIO_INCLUDE_DIR
NAMES phonon.h
HINTS ${STEAMAUDIO_FIND_HEADER_HINTS}
)
if(STEAMAUDIO_INCLUDE_DIR)
add_library (steamaudio INTERFACE)
target_include_directories(steamaudio INTERFACE ${STEAMAUDIO_INCLUDE_DIR})
target_link_libraries (steamaudio INTERFACE ${STEAMAUDIO_LIBRARY})
if(WIN32)
# No standard locations on Windows.
else()
message(STATUS "Could not find phonon.h. miniaudio_engine_steamaudio will be excluded.")
list(APPEND STEAMAUDIO_FIND_LIBRARY_HINTS /opt/steamaudio/lib/${STEAMAUDIO_ARCH})
list(APPEND STEAMAUDIO_FIND_LIBRARY_HINTS /usr/local/steamaudio/lib/${STEAMAUDIO_ARCH})
endif()
set(STEAMAUDIO_FIND_HEADER_HINTS)
list(APPEND STEAMAUDIO_FIND_HEADER_HINTS ${CMAKE_CURRENT_SOURCE_DIR}/external/steamaudio/include)
if(WIN32)
# No standard locations on Windows.
else()
list(APPEND STEAMAUDIO_FIND_HEADER_HINTS /opt/steamaudio/include)
list(APPEND STEAMAUDIO_FIND_HEADER_HINTS /usr/local/steamaudio/include)
endif()
find_library(STEAMAUDIO_LIBRARY NAMES phonon HINTS ${STEAMAUDIO_FIND_LIBRARY_HINTS})
if(STEAMAUDIO_LIBRARY)
find_path(STEAMAUDIO_INCLUDE_DIR
NAMES phonon.h
HINTS ${STEAMAUDIO_FIND_HEADER_HINTS}
)
if(STEAMAUDIO_INCLUDE_DIR)
add_library (steamaudio INTERFACE)
target_include_directories(steamaudio INTERFACE ${STEAMAUDIO_INCLUDE_DIR})
target_link_libraries (steamaudio INTERFACE ${STEAMAUDIO_LIBRARY})
else()
message(STATUS "SteamAudio not found. miniaudio_engine_steamaudio will be excluded.")
endif()
else()
message(STATUS "SteamAudio not found. miniaudio_engine_steamaudio will be excluded.")
endif()
else()
message(STATUS "SteamAudio not found. miniaudio_engine_steamaudio will be excluded.")
message(STATUS "SteamAudio is not supported on ${CMAKE_SYSTEM_PROCESSOR}. miniaudio_engine_steamaudio will be excluded.")
endif()
+12
View File
@@ -4311,12 +4311,24 @@ typedef ma_uint16 wchar_t;
#define MA_ARM64
#endif
#if defined(__riscv)
#if defined(__riscv_xlen)
#if __riscv_xlen == 64
#define MA_RISCV64
#elif __riscv_xlen == 32
#define MA_RISCV32
#endif
#endif
#endif
#if defined(__x86_64__) || (defined(_M_X64) && !defined(_M_ARM64EC))
#define MA_X64
#elif defined(__i386) || defined(_M_IX86)
#define MA_X86
#elif defined(MA_ARM32) || defined(MA_ARM64)
#define MA_ARM
#elif defined(MA_RISCV32) || defined(MA_RISCV64)
#define MA_RISCV
#endif