aboutsummaryrefslogtreecommitdiff
path: root/ports/libdatachannel
diff options
context:
space:
mode:
authorNemirtingas <9432037+Nemirtingas@users.noreply.github.com>2021-08-05 12:09:16 +0200
committerGitHub <noreply@github.com>2021-08-05 03:09:16 -0700
commitf2e53addee85fb94e1597b438ae65767efad6288 (patch)
treec00350b28c05a57ceb1eab2d78e2213d9ddf689b /ports/libdatachannel
parentaacdf5fd5a538d2e72470deeba8f83da3f3ef681 (diff)
downloadvcpkg-f2e53addee85fb94e1597b438ae65767efad6288.tar.gz
vcpkg-f2e53addee85fb94e1597b438ae65767efad6288.zip
[libdatachannel][libjuice] Update libdatachannel to 0.14.1 and libjuice to 0.8.4. (#19305)
* Update libjuice and libdatachannel * Update libjuice * Update baseline * Update libdatachannel to 0.14.1 Fixes *-uwp. * Update baseline. * Fix nettle discovery * Fix usrsctp library path. * Fix libdatachannel not being built SHARED. * Update baseline. Co-authored-by: Nemirtingas <nanaki89@hotmail.fr>
Diffstat (limited to 'ports/libdatachannel')
-rw-r--r--ports/libdatachannel/CXX17_ADAPTOR_TYPEDEFS_DEPRECATION_WARNING.patch25
-rw-r--r--ports/libdatachannel/fix-for-vcpkg.patch107
-rw-r--r--ports/libdatachannel/portfile.cmake7
-rw-r--r--ports/libdatachannel/vcpkg.json3
4 files changed, 42 insertions, 100 deletions
diff --git a/ports/libdatachannel/CXX17_ADAPTOR_TYPEDEFS_DEPRECATION_WARNING.patch b/ports/libdatachannel/CXX17_ADAPTOR_TYPEDEFS_DEPRECATION_WARNING.patch
deleted file mode 100644
index f41945c28..000000000
--- a/ports/libdatachannel/CXX17_ADAPTOR_TYPEDEFS_DEPRECATION_WARNING.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-diff --git a/include/rtc/utils.hpp b/include/rtc/utils.hpp
-index f1a82acb..e882042c 100644
---- a/include/rtc/utils.hpp
-+++ b/include/rtc/utils.hpp
-@@ -25,6 +25,7 @@
- #include <functional>
- #include <memory>
- #include <mutex>
-+#include <utility>
-
- namespace rtc {
-
-@@ -34,11 +35,10 @@ template <class... Ts> overloaded(Ts...) -> overloaded<Ts...>;
- // weak_ptr bind helper
- template <typename F, typename T, typename... Args> auto weak_bind(F &&f, T *t, Args &&..._args) {
- return [bound = std::bind(f, t, _args...), weak_this = t->weak_from_this()](auto &&...args) {
-- using result_type = typename decltype(bound)::result_type;
- if (auto shared_this = weak_this.lock())
- return bound(args...);
- else
-- return static_cast<result_type>(false);
-+ return static_cast<decltype(bound(args...))>(false);
- };
- }
-
diff --git a/ports/libdatachannel/fix-for-vcpkg.patch b/ports/libdatachannel/fix-for-vcpkg.patch
index c86fef232..075b7baf2 100644
--- a/ports/libdatachannel/fix-for-vcpkg.patch
+++ b/ports/libdatachannel/fix-for-vcpkg.patch
@@ -1,15 +1,20 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 14c1ecc..1a46b84 100644
+index beb5000..d6c26cf 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
-@@ -181,21 +181,10 @@ set(THREADS_PREFER_PTHREAD_FLAG TRUE)
- find_package(Threads REQUIRED)
+@@ -30,5 +30,4 @@ set(CMAKE_POSITION_INDEPENDENT_CODE ON)
+ set(CMAKE_POSITION_INDEPENDENT_CODE ON)
+ set(CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake/Modules)
+-set(BUILD_SHARED_LIBS OFF) # to force usrsctp to be built static
- set(CMAKE_POLICY_DEFAULT_CMP0048 NEW)
--add_subdirectory(deps/plog)
-+find_library(USRSCTP_LIBRARY usrsctp REQUIRED)
-+find_path(PLOG_INCLUDE_DIRS "plog/Appenders/AndroidAppender.h")
+ if(WIN32)
+@@ -196,22 +196,10 @@ set(CMAKE_THREAD_PREFER_PTHREAD TRUE)
+ set(THREADS_PREFER_PTHREAD_FLAG TRUE)
+ find_package(Threads REQUIRED)
+-set(CMAKE_POLICY_DEFAULT_CMP0048 NEW)
+-add_subdirectory(deps/plog EXCLUDE_FROM_ALL)
+-
-option(sctp_build_programs 0)
-option(sctp_build_shared_lib 0)
-set(CMAKE_POLICY_DEFAULT_CMP0077 NEW)
@@ -21,82 +26,46 @@ index 14c1ecc..1a46b84 100644
- target_compile_options(usrsctp PRIVATE -Wno-error=format-truncation)
-endif()
-add_library(Usrsctp::Usrsctp ALIAS usrsctp)
--
++find_library(USRSCTP_LIBRARY usrsctp REQUIRED)
++find_path(PLOG_INCLUDE_DIRS "plog/Appenders/AndroidAppender.h")
+
-add_library(datachannel SHARED
+add_library(datachannel
${LIBDATACHANNEL_SOURCES}
${LIBDATACHANNEL_HEADERS}
${LIBDATACHANNEL_IMPL_SOURCES}
-@@ -213,17 +202,17 @@ set_target_properties(datachannel-static PROPERTIES
- VERSION ${PROJECT_VERSION}
- CXX_STANDARD 17)
-
--target_include_directories(datachannel PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/include)
-+target_include_directories(datachannel PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include> $<INSTALL_INTERFACE:include>)
+@@ -232,14 +220,16 @@ set_target_properties(datachannel-static PROPERTIES
+ 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}/src)
--target_link_libraries(datachannel PUBLIC Threads::Threads plog::plog)
--target_link_libraries(datachannel PRIVATE Usrsctp::Usrsctp)
+target_include_directories(datachannel PRIVATE ${PLOG_INCLUDE_DIRS})
-+target_link_libraries(datachannel PUBLIC Threads::Threads ${USRSCTP_LIBRARY})
+ target_link_libraries(datachannel PUBLIC Threads::Threads)
+-target_link_libraries(datachannel PRIVATE Usrsctp::Usrsctp plog::plog)
++target_link_libraries(datachannel PRIVATE ${USRSCTP_LIBRARY})
target_include_directories(datachannel-static PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/include)
target_include_directories(datachannel-static PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include/rtc)
target_include_directories(datachannel-static PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/src)
--target_link_libraries(datachannel-static PUBLIC Threads::Threads plog::plog)
--target_link_libraries(datachannel-static PRIVATE Usrsctp::Usrsctp)
-+target_include_directories(datachannel-static PRIVATE ${PLOG_INCLUDE_DIRS})
-+target_link_libraries(datachannel-static PUBLIC Threads::Threads ${USRSCTP_LIBRARY})
++target_include_directories(datachannel PRIVATE ${PLOG_INCLUDE_DIRS})
+ target_link_libraries(datachannel-static PUBLIC Threads::Threads)
+-target_link_libraries(datachannel-static PRIVATE Usrsctp::Usrsctp plog::plog)
++target_link_libraries(datachannel-static PRIVATE ${USRSCTP_LIBRARY})
if(WIN32)
target_link_libraries(datachannel PUBLIC ws2_32) # winsock2
-@@ -295,11 +284,11 @@ if (USE_NICE)
- target_link_libraries(datachannel PRIVATE LibNice::LibNice)
- target_link_libraries(datachannel-static PRIVATE LibNice::LibNice)
- else()
-- add_subdirectory(deps/libjuice EXCLUDE_FROM_ALL)
-+ find_package(libjuice CONFIG REQUIRED)
- target_compile_definitions(datachannel 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)
-+ target_link_libraries(datachannel PRIVATE LibJuice::juice)
-+ target_link_libraries(datachannel-static PRIVATE LibJuice::juice)
+@@ -334,11 +324,11 @@ else()
+ target_link_libraries(datachannel PRIVATE LibJuice::LibJuice)
+ target_link_libraries(datachannel-static PRIVATE LibJuice::LibJuice)
+ else()
+- add_subdirectory(deps/libjuice EXCLUDE_FROM_ALL)
++ find_package(libjuice CONFIG REQUIRED)
+ 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)
++ target_link_libraries(datachannel PRIVATE LibJuice::juice)
++ target_link_libraries(datachannel-static PRIVATE LibJuice::juice)
+ endif()
endif()
- if(CAPI_STDCALL)
-@@ -310,7 +299,11 @@ endif()
- add_library(LibDataChannel::LibDataChannel ALIAS datachannel)
- add_library(LibDataChannel::LibDataChannelStatic ALIAS datachannel-static)
-
--install(TARGETS datachannel LIBRARY DESTINATION lib)
-+install(TARGETS datachannel EXPORT libdatachannel-config
-+ RUNTIME DESTINATION bin
-+ LIBRARY DESTINATION lib
-+ ARCHIVE DESTINATION lib
-+)
- install(FILES ${LIBDATACHANNEL_HEADERS} DESTINATION include/rtc)
-
- if(NOT MSVC)
-@@ -374,3 +367,8 @@ endif()
- add_subdirectory(examples/copy-paste-capi)
- endif()
-
-+install(
-+ EXPORT libdatachannel-config
-+ NAMESPACE LibDatachannel::
-+ DESTINATION share/cmake/libdatachannel
-+)
-diff --git a/src/impl/tcptransport.hpp b/src/impl/tcptransport.hpp
-index f091fa2..8bcfbe7 100644
---- a/src/impl/tcptransport.hpp
-+++ b/src/impl/tcptransport.hpp
-@@ -29,7 +29,7 @@
- #include <thread>
-
- // Use the socket defines from libjuice
--#include "../deps/libjuice/src/socket.h"
-+#include <juice/src/socket.h>
-
- namespace rtc::impl {
-
+
diff --git a/ports/libdatachannel/portfile.cmake b/ports/libdatachannel/portfile.cmake
index 4104d890a..902220a90 100644
--- a/ports/libdatachannel/portfile.cmake
+++ b/ports/libdatachannel/portfile.cmake
@@ -1,12 +1,11 @@
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO paullouisageneau/libdatachannel
- REF 655175d21e58281031c940a94042d5d1fd46efb3 # v 0.12.2
- SHA512 e1e228bf720ef57130fbb9cc33310cebbdbd16c001455cd56e8746b6ee41bac56da5e5a90235e0a826b52711dc3c95b9d9f56d9e406999f9fd384aee2892578d
+ REF v0.14.1
+ SHA512 a0eb834eacdb5aef644fc4456b5087742aab37ac58e2871daa7ba2ac25cab4ddb530bd0a12cf5f4754c28749a2f59fc2fb3e2ae945b867cec8aaad22f4ac71c6
HEAD_REF master
PATCHES
fix-for-vcpkg.patch
- CXX17_ADAPTOR_TYPEDEFS_DEPRECATION_WARNING.patch # submitted upstream as https://github.com/paullouisageneau/libdatachannel/pull/413
)
vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
@@ -42,4 +41,4 @@ find_dependency(OpenSSL)
find_dependency(libjuice)
${DATACHANNEL_CONFIG}")
-file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) \ No newline at end of file
+file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
diff --git a/ports/libdatachannel/vcpkg.json b/ports/libdatachannel/vcpkg.json
index 903b99403..d657a3841 100644
--- a/ports/libdatachannel/vcpkg.json
+++ b/ports/libdatachannel/vcpkg.json
@@ -1,7 +1,6 @@
{
"name": "libdatachannel",
- "version-semver": "0.12.2",
- "port-version": 1,
+ "version-semver": "0.14.1",
"description": "libdatachannel is a standalone implementation of WebRTC Data Channels, WebRTC Media Transport, and WebSockets in C++17 with C bindings for POSIX platforms (including GNU/Linux, Android, and Apple macOS) and Microsoft Windows.",
"homepage": "https://github.com/paullouisageneau/libdatachannel",
"dependencies": [