CMake config option to use OpenAL-soft

THis enables overriding the Apple OpenAL.framework on
macOS, and using OpenAL-soft instead.
This commit is contained in:
James Turner
2021-12-24 13:23:34 +00:00
parent 854ad8c3fa
commit da3507f3df
3 changed files with 35 additions and 2 deletions
+17 -2
View File
@@ -96,6 +96,8 @@ option(ENABLE_GDAL "Set to ON to build SimGear with GDAL support" OFF)
option(ENABLE_TESTS "Set to OFF to disable building SimGear's test applications" ON)
option(ENABLE_SOUND "Set to OFF to disable building SimGear's sound support" ON)
option(USE_AEONWAVE "Set to ON to use AeonWave instead of OpenAL" ON)
option(USE_OPENALSOFT "Set to ON to use OpenAL from OpenAL-soft" OFF)
option(ENABLE_PKGUTIL "Set to ON to build the sg_pkgutil application (default)" ON)
option(ENABLE_SIMD "Enable SSE/SSE2 support for compilers" ON)
option(ENABLE_SIMD_CODE "Enable SSE/SSE2 support code for compilers" OFF)
@@ -147,13 +149,26 @@ else()
if(NOT AAX_FOUND)
set(USE_AEONWAVE FALSE)
find_package(OpenAL REQUIRED)
if (USE_OPENALSOFT)
message(STATUS "Sound requested to use OpenAL-soft: ensure Config.cmake files are in CMAKE_PREFIX_PATH")
find_package(OpenAL REQUIRED CONFIG)
if (TARGET OpenAL::OpenAL)
set(SG_SOUND_USES_OPENALSOFT 1)
endif()
else()
# regular OpenAL is found via the CMake distro-suppling FindOpenAL
find_package(OpenAL REQUIRED)
endif()
message(STATUS "OpenAL: ${OPENAL_LIBRARY}")
endif()
if(AAX_FOUND)
message(STATUS "Sound support: AeonWave")
elseif (TARGET OpenAL::OpenAL)
message(STATUS "Sound support: OpenAL-soft")
else()
message(STATUS "Sound support: OpenAL")
message(STATUS "Sound support: OpenAL (from system)")
endif()
endif(ENABLE_SOUND)