|
@@ -4,12 +4,19 @@ project(libdatachannel
|
|
VERSION 0.6.5
|
|
VERSION 0.6.5
|
|
LANGUAGES CXX)
|
|
LANGUAGES CXX)
|
|
|
|
|
|
|
|
+# Options
|
|
option(USE_GNUTLS "Use GnuTLS instead of OpenSSL" OFF)
|
|
option(USE_GNUTLS "Use GnuTLS instead of OpenSSL" OFF)
|
|
-option(USE_JUICE "Use libjuice instead of libnice" OFF)
|
|
|
|
|
|
+option(USE_NICE "Use libnice instead of libjuice" OFF)
|
|
option(USE_SRTP "Enable SRTP for media support" OFF)
|
|
option(USE_SRTP "Enable SRTP for media support" OFF)
|
|
option(NO_WEBSOCKET "Disable WebSocket support" OFF)
|
|
option(NO_WEBSOCKET "Disable WebSocket support" OFF)
|
|
option(NO_EXAMPLES "Disable examples" OFF)
|
|
option(NO_EXAMPLES "Disable examples" OFF)
|
|
|
|
|
|
|
|
+if(USE_NICE)
|
|
|
|
+ option(USE_JUICE "Use libjuice" OFF)
|
|
|
|
+else()
|
|
|
|
+ option(USE_JUICE "Use libjuice" ON)
|
|
|
|
+endif()
|
|
|
|
+
|
|
if(USE_GNUTLS)
|
|
if(USE_GNUTLS)
|
|
option(USE_NETTLE "Use Nettle instead of OpenSSL in libjuice" ON)
|
|
option(USE_NETTLE "Use Nettle instead of OpenSSL in libjuice" ON)
|
|
else()
|
|
else()
|
|
@@ -185,18 +192,18 @@ else()
|
|
target_link_libraries(datachannel-static PRIVATE OpenSSL::SSL)
|
|
target_link_libraries(datachannel-static PRIVATE OpenSSL::SSL)
|
|
endif()
|
|
endif()
|
|
|
|
|
|
-if (USE_JUICE)
|
|
|
|
- add_subdirectory(deps/libjuice EXCLUDE_FROM_ALL)
|
|
|
|
- target_compile_definitions(datachannel PRIVATE USE_JUICE=1)
|
|
|
|
- target_compile_definitions(datachannel-static PRIVATE USE_JUICE=1)
|
|
|
|
- target_link_libraries(datachannel PRIVATE LibJuice::LibJuiceStatic)
|
|
|
|
- target_link_libraries(datachannel-static PRIVATE LibJuice::LibJuiceStatic)
|
|
|
|
-else()
|
|
|
|
|
|
+if (USE_NICE OR NOT USE_JUICE)
|
|
find_package(LibNice REQUIRED)
|
|
find_package(LibNice REQUIRED)
|
|
target_compile_definitions(datachannel PRIVATE USE_JUICE=0)
|
|
target_compile_definitions(datachannel PRIVATE USE_JUICE=0)
|
|
target_compile_definitions(datachannel-static PRIVATE USE_JUICE=0)
|
|
target_compile_definitions(datachannel-static PRIVATE USE_JUICE=0)
|
|
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()
|
|
|
|
+ add_subdirectory(deps/libjuice EXCLUDE_FROM_ALL)
|
|
|
|
+ target_compile_definitions(datachannel PRIVATE USE_JUICE=1)
|
|
|
|
+ target_compile_definitions(datachannel-static PRIVATE USE_JUICE=1)
|
|
|
|
+ target_link_libraries(datachannel PRIVATE LibJuice::LibJuiceStatic)
|
|
|
|
+ target_link_libraries(datachannel-static PRIVATE LibJuice::LibJuiceStatic)
|
|
endif()
|
|
endif()
|
|
|
|
|
|
add_library(LibDataChannel::LibDataChannel ALIAS datachannel)
|
|
add_library(LibDataChannel::LibDataChannel ALIAS datachannel)
|