aboutsummaryrefslogtreecommitdiff
path: root/cmake
diff options
context:
space:
mode:
authorMarvin W <git@larma.de>2025-01-26 12:02:49 +0100
committerMarvin W <git@larma.de>2025-02-22 21:06:26 +0100
commit1c365daa14e0e11bb4931b0c7891a781c5fc7084 (patch)
tree0e045a92a5466be5509b7d9312d53a811c246f5f /cmake
parentf796286650e4ad862b147e484d528ca56cf5e0e6 (diff)
Voice processor: add support for webrtc-audio-processing 1.x and 2.x
Diffstat (limited to 'cmake')
-rw-r--r--cmake/FindWebRTCAudioProcessing.cmake36
-rw-r--r--cmake/PkgConfigWithFallback.cmake6
2 files changed, 38 insertions, 4 deletions
diff --git a/cmake/FindWebRTCAudioProcessing.cmake b/cmake/FindWebRTCAudioProcessing.cmake
index 5f17805d..218d0da2 100644
--- a/cmake/FindWebRTCAudioProcessing.cmake
+++ b/cmake/FindWebRTCAudioProcessing.cmake
@@ -1,10 +1,38 @@
include(PkgConfigWithFallback)
+
find_pkg_config_with_fallback(WebRTCAudioProcessing
- PKG_CONFIG_NAME webrtc-audio-processing
- LIB_NAMES webrtc_audio_processing
- INCLUDE_NAMES webrtc/modules/audio_processing/include/audio_processing.h
- INCLUDE_DIR_SUFFIXES webrtc-audio-processing webrtc_audio_processing
+ PKG_CONFIG_NAME webrtc-audio-processing-1
+ LIB_NAMES webrtc_audio_processing-1
+ INCLUDE_NAMES modules/audio_processing/include/audio_processing.h
+ INCLUDE_DIR_SUFFIXES webrtc-audio-processing-1 webrtc_audio_processing-1
)
+if(WebRTCAudioProcessing_FOUND AND NOT WebRTCAudioProcessing_VERSION)
+ set(WebRTCAudioProcessing_VERSION "1.0")
+endif()
+
+if(NOT WebRTCAudioProcessing_FOUND)
+ find_pkg_config_with_fallback(WebRTCAudioProcessing
+ PKG_CONFIG_NAME webrtc-audio-processing
+ LIB_NAMES webrtc_audio_processing
+ INCLUDE_NAMES webrtc/modules/audio_processing/include/audio_processing.h
+ INCLUDE_DIR_SUFFIXES webrtc-audio-processing webrtc_audio_processing
+ )
+ if(WebRTCAudioProcessing_FOUND AND NOT WebRTCAudioProcessing_VERSION)
+ set(WebRTCAudioProcessing_VERSION "0.2")
+ endif()
+endif(NOT WebRTCAudioProcessing_FOUND)
+
+if(NOT WebRTCAudioProcessing_FOUND)
+ find_pkg_config_with_fallback(WebRTCAudioProcessing
+ PKG_CONFIG_NAME webrtc-audio-processing-2
+ LIB_NAMES webrtc_audio_processing-2
+ INCLUDE_NAMES modules/audio_processing/include/audio_processing.h
+ INCLUDE_DIR_SUFFIXES webrtc-audio-processing-2 webrtc_audio_processing-2
+ )
+ if(WebRTCAudioProcessing_FOUND AND NOT WebRTCAudioProcessing_VERSION)
+ set(WebRTCAudioProcessing_VERSION "2.0")
+ endif()
+endif(NOT WebRTCAudioProcessing_FOUND)
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(WebRTCAudioProcessing
diff --git a/cmake/PkgConfigWithFallback.cmake b/cmake/PkgConfigWithFallback.cmake
index 9124bb35..40a3eb97 100644
--- a/cmake/PkgConfigWithFallback.cmake
+++ b/cmake/PkgConfigWithFallback.cmake
@@ -15,9 +15,15 @@ function(find_pkg_config_with_fallback name)
# Try to find real file name of libraries
foreach(lib ${${name}_PKG_CONFIG_LIBRARIES})
+ if (${lib} STREQUAL "atomic")
+ set(${name}_${lib}_LIBRARY ${lib})
+ mark_as_advanced(${name}_${lib}_LIBRARY)
+ continue()
+ endif()
find_library(${name}_${lib}_LIBRARY ${lib} HINTS ${${name}_PKG_CONFIG_LIBRARY_DIRS})
mark_as_advanced(${name}_${lib}_LIBRARY)
if(NOT ${name}_${lib}_LIBRARY)
+ message(STATUS "Required library for package " ${name} " not found: " ${lib})
unset(${name}_FOUND)
endif(NOT ${name}_${lib}_LIBRARY)
endforeach(lib)