From: Jean-Michaƫl Celerier Date: Tue, 6 Oct 2020 21:07:15 +0000 (+0200) Subject: Add support for enabling dynamic alsa loading in CMakeLists.txt X-Git-Tag: v19.7.0~101 X-Git-Url: https://andrewgundersen.net/repos?a=commitdiff_plain;h=58fe947b7fdb74a1010e2a3619ea2c7ff9c929dd;p=portaudio Add support for enabling dynamic alsa loading in CMakeLists.txt It had been added to the source code a long time ago, but was not integrated to the build system. --- diff --git a/CMakeLists.txt b/CMakeLists.txt index 4fbb3a8..0302ae8 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -293,6 +293,7 @@ ELSE() FIND_PACKAGE(ALSA) IF(ALSA_FOUND) OPTION(PA_USE_ALSA "Enable support for ALSA" ON) + OPTION(PA_ALSA_DYNAMIC "Enable loading ALSA through dlopen" OFF) ELSE() OPTION(PA_USE_ALSA "Enable support for ALSA" OFF) ENDIF() @@ -303,8 +304,14 @@ ELSE() SET(PA_PUBLIC_INCLUDES ${PA_PUBLIC_INCLUDES} include/pa_linux_alsa.h) SET(PA_SOURCES ${PA_SOURCES} ${PA_ALSA_SOURCES}) SET(PA_PRIVATE_COMPILE_DEFINITIONS ${PA_PRIVATE_COMPILE_DEFINITIONS} PA_USE_ALSA) - SET(PA_LIBRARY_DEPENDENCIES ${PA_LIBRARY_DEPENDENCIES} ${ALSA_LIBRARIES}) - SET(PA_PKGCONFIG_LDFLAGS "${PA_PKGCONFIG_LDFLAGS} -lasound") + IF(PA_ALSA_DYNAMIC) + SET(PA_PRIVATE_COMPILE_DEFINITIONS ${PA_PRIVATE_COMPILE_DEFINITIONS} PA_ALSA_DYNAMIC) + SET(PA_LIBRARY_DEPENDENCIES ${PA_LIBRARY_DEPENDENCIES} ${CMAKE_DL_LIBS}) + SET(PA_PKGCONFIG_LDFLAGS "${PA_PKGCONFIG_LDFLAGS} -l${CMAKE_DL_LIBS}") + ELSE() + SET(PA_LIBRARY_DEPENDENCIES ${PA_LIBRARY_DEPENDENCIES} ${ALSA_LIBRARIES}) + SET(PA_PKGCONFIG_LDFLAGS "${PA_PKGCONFIG_LDFLAGS} -lasound") + ENDIF() ENDIF() ENDIF()