|
@@ -8,6 +8,7 @@ set(PROJECT_DESCRIPTION "WebRTC Data Channels Library")
|
|
option(USE_GNUTLS "Use GnuTLS instead of OpenSSL" OFF)
|
|
option(USE_GNUTLS "Use GnuTLS instead of OpenSSL" OFF)
|
|
option(USE_NICE "Use libnice instead of libjuice" OFF)
|
|
option(USE_NICE "Use libnice instead of libjuice" OFF)
|
|
option(USE_SYSTEM_SRTP "Use system libSRTP" OFF)
|
|
option(USE_SYSTEM_SRTP "Use system libSRTP" OFF)
|
|
|
|
+option(USE_SYSTEM_JUICE "Use system libjuice" OFF)
|
|
option(NO_WEBSOCKET "Disable WebSocket support" OFF)
|
|
option(NO_WEBSOCKET "Disable WebSocket support" OFF)
|
|
option(NO_MEDIA "Disable media transport support" OFF)
|
|
option(NO_MEDIA "Disable media transport support" OFF)
|
|
option(NO_EXAMPLES "Disable examples" OFF)
|
|
option(NO_EXAMPLES "Disable examples" OFF)
|
|
@@ -228,7 +229,7 @@ set_target_properties(datachannel-static PROPERTIES
|
|
VERSION ${PROJECT_VERSION}
|
|
VERSION ${PROJECT_VERSION}
|
|
CXX_STANDARD 17)
|
|
CXX_STANDARD 17)
|
|
|
|
|
|
-target_include_directories(datachannel PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include> $<INSTALL_INTERFACE:include>)
|
|
|
|
|
|
+target_include_directories(datachannel PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>)
|
|
target_include_directories(datachannel PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include/rtc)
|
|
target_include_directories(datachannel PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include/rtc)
|
|
target_include_directories(datachannel PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/src)
|
|
target_include_directories(datachannel PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/src)
|
|
target_link_libraries(datachannel PUBLIC Threads::Threads)
|
|
target_link_libraries(datachannel PUBLIC Threads::Threads)
|
|
@@ -324,11 +325,21 @@ if (USE_NICE)
|
|
target_link_libraries(datachannel PRIVATE LibNice::LibNice)
|
|
target_link_libraries(datachannel PRIVATE LibNice::LibNice)
|
|
target_link_libraries(datachannel-static PRIVATE LibNice::LibNice)
|
|
target_link_libraries(datachannel-static PRIVATE LibNice::LibNice)
|
|
else()
|
|
else()
|
|
- add_subdirectory(deps/libjuice EXCLUDE_FROM_ALL)
|
|
|
|
target_compile_definitions(datachannel PRIVATE USE_NICE=0)
|
|
target_compile_definitions(datachannel PRIVATE USE_NICE=0)
|
|
target_compile_definitions(datachannel-static PRIVATE USE_NICE=0)
|
|
target_compile_definitions(datachannel-static PRIVATE USE_NICE=0)
|
|
- target_link_libraries(datachannel PRIVATE LibJuice::LibJuiceStatic)
|
|
|
|
- target_link_libraries(datachannel-static PRIVATE LibJuice::LibJuiceStatic)
|
|
|
|
|
|
+ if(USE_SYSTEM_JUICE)
|
|
|
|
+ find_package(LibJuice REQUIRED)
|
|
|
|
+ target_compile_definitions(datachannel PRIVATE RTC_SYSTEM_JUICE=1)
|
|
|
|
+ target_compile_definitions(datachannel-static PRIVATE RTC_SYSTEM_JUICE=1)
|
|
|
|
+ target_link_libraries(datachannel PRIVATE LibJuice::LibJuice)
|
|
|
|
+ target_link_libraries(datachannel-static PRIVATE LibJuice::LibJuice)
|
|
|
|
+ else()
|
|
|
|
+ add_subdirectory(deps/libjuice EXCLUDE_FROM_ALL)
|
|
|
|
+ target_compile_definitions(datachannel PRIVATE RTC_SYSTEM_JUICE=0)
|
|
|
|
+ target_compile_definitions(datachannel-static PRIVATE RTC_SYSTEM_JUICE=0)
|
|
|
|
+ target_link_libraries(datachannel PRIVATE LibJuice::LibJuiceStatic)
|
|
|
|
+ target_link_libraries(datachannel-static PRIVATE LibJuice::LibJuiceStatic)
|
|
|
|
+ endif()
|
|
endif()
|
|
endif()
|
|
|
|
|
|
if(CAPI_STDCALL)
|
|
if(CAPI_STDCALL)
|