diff --git a/lib-src/portaudio-v19/CMakeLists.txt b/lib-src/portaudio-v19/CMakeLists.txt index ad7611837..5bf96c899 100644 --- a/lib-src/portaudio-v19/CMakeLists.txt +++ b/lib-src/portaudio-v19/CMakeLists.txt @@ -50,6 +50,8 @@ FIND_PACKAGE(DXSDK) # Try to find ASIO SDK (assumes that portaudio and asiosdk folders are side-by-side, see # http://www.portaudio.com/trac/wiki/TutorialDir/Compile/WindowsASIOMSVC) FIND_PACKAGE(ASIOSDK) +# Try to find JACK SDK +FIND_PACKAGE(JACKSDK) IF(ASIOSDK_FOUND) OPTION(PA_USE_ASIO "Enable support for ASIO" ON) @@ -187,6 +189,23 @@ SOURCE_GROUP("hostapi\\wdmks" FILES ) ENDIF(PA_USE_WDMKS) +IF(PA_USE_JACK) + +SET(PA_JACK_INCLUDES + include/pa_jack.h + src/hostapi/jack/pa_jack_dynload.h +) + +SET(PA_JACK_SOURCES + src/hostapi/jack/pa_jack.c + src/hostapi/jack/pa_jack_dynload.h +) + +SOURCE_GROUP("hostapi\\jack" FILES + ${PA_WASAPI_SOURCES} +) +ENDIF(PA_USE_JACK) + SET(PA_SKELETON_SOURCES src/hostapi/skeleton/pa_hostapi_skeleton.c ) @@ -203,6 +222,7 @@ SET(PA_INCLUDES ${PA_WMME_INCLUDES} ${PA_WASAPI_INCLUDES} ${PA_WDMKS_INCLUDES} + ${PA_JACK_INCLUDES} ) ENDIF(WIN32) @@ -216,6 +236,7 @@ SET(PA_COMMON_INCLUDES src/common/pa_cpuload.h src/common/pa_debugprint.h src/common/pa_dither.h + src/common/pa_dynload.h src/common/pa_endianness.h src/common/pa_hostapi.h src/common/pa_memorybarrier.h @@ -233,6 +254,7 @@ SET(PA_COMMON_SOURCES src/common/pa_cpuload.c src/common/pa_debugprint.c src/common/pa_dither.c + src/common/pa_dynload.c src/common/pa_front.c src/common/pa_process.c src/common/pa_ringbuffer.c @@ -282,6 +304,7 @@ SET(SOURCES_LESS_ASIO_SDK ${PA_WMME_SOURCES} ${PA_WASAPI_SOURCES} ${PA_WDMKS_SOURCES} + ${PA_JACK_SOURCES} ${PA_SKELETON_SOURCES} ${PA_PLATFORM_SOURCES} ) diff --git a/lib-src/portaudio-v19/Makefile.in b/lib-src/portaudio-v19/Makefile.in index 5e1a76485..f5fc25804 100644 --- a/lib-src/portaudio-v19/Makefile.in +++ b/lib-src/portaudio-v19/Makefile.in @@ -52,6 +52,7 @@ COMMON_OBJS = \ src/common/pa_converters.o \ src/common/pa_cpuload.o \ src/common/pa_dither.o \ + src/common/pa_dynload.o \ src/common/pa_debugprint.o \ src/common/pa_front.o \ src/common/pa_process.o \ diff --git a/lib-src/portaudio-v19/cmake_support/options_cmake.h.in b/lib-src/portaudio-v19/cmake_support/options_cmake.h.in index 8308bb7f8..6511ec561 100644 --- a/lib-src/portaudio-v19/cmake_support/options_cmake.h.in +++ b/lib-src/portaudio-v19/cmake_support/options_cmake.h.in @@ -26,6 +26,7 @@ #cmakedefine01 PA_USE_WMME #cmakedefine01 PA_USE_WASAPI #cmakedefine01 PA_USE_WDMKS +#cmakedefine01 PA_USE_JACK #else #error "Platform currently not supported by CMake script" #endif diff --git a/lib-src/portaudio-v19/cmake_support/template_portaudio.def b/lib-src/portaudio-v19/cmake_support/template_portaudio.def index 0e06d0ad4..22cabd825 100644 --- a/lib-src/portaudio-v19/cmake_support/template_portaudio.def +++ b/lib-src/portaudio-v19/cmake_support/template_portaudio.def @@ -51,3 +51,5 @@ PaUtil_SetDebugPrintFunction @55 @DEF_EXCLUDE_WASAPI_SYMBOLS@PaWasapi_GetFramesPerHostBuffer @60 @DEF_EXCLUDE_WASAPI_SYMBOLS@PaWasapi_GetJackDescription @61 @DEF_EXCLUDE_WASAPI_SYMBOLS@PaWasapi_GetJackCount @62 +@DEF_EXCLUDE_WASAPI_SYMBOLS@PaJack_SetClientName @63 +@DEF_EXCLUDE_WASAPI_SYMBOLS@PaJack_GetClientName @64 diff --git a/lib-src/portaudio-v19/configure b/lib-src/portaudio-v19/configure index a58b15da5..a0c05e0dc 100755 --- a/lib-src/portaudio-v19/configure +++ b/lib-src/portaudio-v19/configure @@ -16116,7 +16116,7 @@ fi if [ "$have_jack" = "yes" ] && [ "$with_jack" != "no" ] ; then DLL_LIBS="$DLL_LIBS $JACK_LIBS" CFLAGS="$CFLAGS $JACK_CFLAGS" - OTHER_OBJS="$OTHER_OBJS src/hostapi/jack/pa_jack.o src/common/pa_ringbuffer.o" + OTHER_OBJS="$OTHER_OBJS src/hostapi/jack/pa_jack.o src/hostapi/jack/pa_jack_dynload.o src/common/pa_ringbuffer.o" INCLUDES="$INCLUDES pa_jack.h" $as_echo "#define PA_USE_JACK 1" >>confdefs.h diff --git a/lib-src/portaudio-v19/configure.in b/lib-src/portaudio-v19/configure.in index 778358183..c8c253519 100644 --- a/lib-src/portaudio-v19/configure.in +++ b/lib-src/portaudio-v19/configure.in @@ -394,7 +394,7 @@ case "${host_os}" in if [[ "$have_jack" = "yes" ] && [ "$with_jack" != "no" ]] ; then DLL_LIBS="$DLL_LIBS $JACK_LIBS" CFLAGS="$CFLAGS $JACK_CFLAGS" - OTHER_OBJS="$OTHER_OBJS src/hostapi/jack/pa_jack.o src/common/pa_ringbuffer.o" + OTHER_OBJS="$OTHER_OBJS src/hostapi/jack/pa_jack.o src/hostapi/jack/pa_jack_dynload.o src/common/pa_ringbuffer.o" INCLUDES="$INCLUDES pa_jack.h" AC_DEFINE(PA_USE_JACK,1) fi