diff --git a/CMakeExternals/cpprestsdk.cmake b/CMakeExternals/cpprestsdk.cmake index c48dccc0cf..93644937b8 100644 --- a/CMakeExternals/cpprestsdk.cmake +++ b/CMakeExternals/cpprestsdk.cmake @@ -1,40 +1,39 @@ set(proj cpprestsdk) set(proj_DEPENDENCIES Boost ZLIB) if(MITK_USE_${proj}) set(${proj}_DEPENDS ${proj}) if(DEFINED ${proj}_DIR AND NOT EXISTS ${${proj}_DIR}) message(FATAL_ERROR "${proj}_DIR variable is defined but corresponds to non-existing directory!") endif() if(NOT DEFINED ${proj}_DIR) set(cmake_cache_args ${ep_common_cache_args} -DBUILD_SAMPLES:BOOL=OFF -DBUILD_TESTS:BOOL=OFF -DWERROR:BOOL=OFF ) if(OPENSSL_ROOT_DIR) list(APPEND cmake_cache_args -DOPENSSL_ROOT_DIR:PATH=${OPENSSL_ROOT_DIR} ) endif() ExternalProject_Add(${proj} - URL ${MITK_THIRDPARTY_DOWNLOAD_PREFIX_URL}/cpprestsdk-2.10.10.tar.gz - URL_MD5 705c4bd79158433309b21251a4936b18 - PATCH_COMMAND ${PATCH_COMMAND} -d "Release/libs/websocketpp" -N -p1 -i "${CMAKE_CURRENT_LIST_DIR}/${proj}.patch" + GIT_REPOSITORY https://github.com/microsoft/cpprestsdk.git + GIT_TAG v2.10.16 SOURCE_SUBDIR Release CMAKE_ARGS ${ep_common_args} CMAKE_CACHE_ARGS ${cmake_cache_args} CMAKE_CACHE_DEFAULT_ARGS ${ep_common_cache_default_args} DEPENDS ${proj_DEPENDENCIES} ) set(${proj}_DIR ${ep_prefix}) else() mitkMacroEmptyExternalProject(${proj} "${proj_DEPENDENCIES}") endif() endif() diff --git a/CMakeExternals/cpprestsdk.patch b/CMakeExternals/cpprestsdk.patch deleted file mode 100644 index c6e9591407..0000000000 --- a/CMakeExternals/cpprestsdk.patch +++ /dev/null @@ -1,139 +0,0 @@ -From c769c9238ad62178f506038178714a1c35aa2769 Mon Sep 17 00:00:00 2001 -From: Stefan Floeren <42731906+stefan-floeren@users.noreply.github.com> -Date: Tue, 16 Apr 2019 08:38:01 +0200 -Subject: [PATCH 1/2] Replace make_shared with new in some cases - -Replace make_shared for asio types that take a lib::ref as a parameter. -This should fix the ASIO change (boostorg/asio@59066d8) for 1.70, -while keeping it backwards compatible to older boost versions. ---- - websocketpp/transport/asio/connection.hpp | 7 ++++--- - websocketpp/transport/asio/endpoint.hpp | 3 +-- - websocketpp/transport/asio/security/none.hpp | 3 +-- - websocketpp/transport/asio/security/tls.hpp | 3 +-- - 4 files changed, 7 insertions(+), 9 deletions(-) - -diff --git a/websocketpp/transport/asio/connection.hpp b/websocketpp/transport/asio/connection.hpp -index 60f88a79..1ccda8f3 100644 ---- a/websocketpp/transport/asio/connection.hpp -+++ b/websocketpp/transport/asio/connection.hpp -@@ -311,9 +311,10 @@ class connection : public config::socket_type::socket_con_type { - * needed. - */ - timer_ptr set_timer(long duration, timer_handler callback) { -- timer_ptr new_timer = lib::make_shared( -- lib::ref(*m_io_service), -- lib::asio::milliseconds(duration) -+ timer_ptr new_timer( -+ new lib::asio::steady_timer( -+ *m_io_service, -+ lib::asio::milliseconds(duration)) - ); - - if (config::enable_multithreading) { -diff --git a/websocketpp/transport/asio/endpoint.hpp b/websocketpp/transport/asio/endpoint.hpp -index ddab2c74..4b719a97 100644 ---- a/websocketpp/transport/asio/endpoint.hpp -+++ b/websocketpp/transport/asio/endpoint.hpp -@@ -195,8 +195,7 @@ class endpoint : public config::socket_type { - - m_io_service = ptr; - m_external_io_service = true; -- m_acceptor = lib::make_shared( -- lib::ref(*m_io_service)); -+ m_acceptor.reset(new lib::asio::ip::tcp::acceptor(*m_io_service)); - - m_state = READY; - ec = lib::error_code(); -diff --git a/websocketpp/transport/asio/security/none.hpp b/websocketpp/transport/asio/security/none.hpp -index 5c8293db..6c7d3524 100644 ---- a/websocketpp/transport/asio/security/none.hpp -+++ b/websocketpp/transport/asio/security/none.hpp -@@ -168,8 +168,7 @@ class connection : public lib::enable_shared_from_this { - return socket::make_error_code(socket::error::invalid_state); - } - -- m_socket = lib::make_shared( -- lib::ref(*service)); -+ m_socket.reset(new lib::asio::ip::tcp::socket(*service)); - - if (m_socket_init_handler) { - m_socket_init_handler(m_hdl, *m_socket); -diff --git a/websocketpp/transport/asio/security/tls.hpp b/websocketpp/transport/asio/security/tls.hpp -index c76fd9aa..04ac3790 100644 ---- a/websocketpp/transport/asio/security/tls.hpp -+++ b/websocketpp/transport/asio/security/tls.hpp -@@ -193,8 +193,7 @@ class connection : public lib::enable_shared_from_this { - if (!m_context) { - return socket::make_error_code(socket::error::invalid_tls_context); - } -- m_socket = lib::make_shared( -- _WEBSOCKETPP_REF(*service),lib::ref(*m_context)); -+ m_socket.reset(new socket_type(*service, *m_context)); - - if (m_socket_init_handler) { - m_socket_init_handler(m_hdl, get_socket()); - -From f810ca2e800e9b55be41c5911cf1d1185fcd516b Mon Sep 17 00:00:00 2001 -From: Stefan Floeren <42731906+stefan-floeren@users.noreply.github.com> -Date: Wed, 17 Apr 2019 10:06:18 +0000 -Subject: [PATCH 2/2] Fix missed entries; fix testing - ---- - CMakeLists.txt | 2 +- - websocketpp/transport/asio/connection.hpp | 3 +-- - websocketpp/transport/asio/endpoint.hpp | 7 ++----- - 3 files changed, 4 insertions(+), 8 deletions(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 2786aba9..951de975 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -202,7 +202,7 @@ if (BUILD_TESTS OR BUILD_EXAMPLES) - endif () - - if (NOT Boost_USE_STATIC_LIBS) -- add_definitions (/DBOOST_TEST_DYN_LINK) -+ add_definitions (-DBOOST_TEST_DYN_LINK) - endif () - - set (Boost_FIND_REQUIRED TRUE) -diff --git a/websocketpp/transport/asio/connection.hpp b/websocketpp/transport/asio/connection.hpp -index 1ccda8f3..57dda74a 100644 ---- a/websocketpp/transport/asio/connection.hpp -+++ b/websocketpp/transport/asio/connection.hpp -@@ -462,8 +462,7 @@ class connection : public config::socket_type::socket_con_type { - m_io_service = io_service; - - if (config::enable_multithreading) { -- m_strand = lib::make_shared( -- lib::ref(*io_service)); -+ m_strand.reset(new lib::asio::io_service::strand(*io_service)); - } - - lib::error_code ec = socket_con_type::init_asio(io_service, m_strand, -diff --git a/websocketpp/transport/asio/endpoint.hpp b/websocketpp/transport/asio/endpoint.hpp -index 4b719a97..94509adb 100644 ---- a/websocketpp/transport/asio/endpoint.hpp -+++ b/websocketpp/transport/asio/endpoint.hpp -@@ -687,9 +687,7 @@ class endpoint : public config::socket_type { - * @since 0.3.0 - */ - void start_perpetual() { -- m_work = lib::make_shared( -- lib::ref(*m_io_service) -- ); -+ m_work.reset(new lib::asio::io_service::work(*m_io_service)); - } - - /// Clears the endpoint's perpetual flag, allowing it to exit when empty -@@ -853,8 +851,7 @@ class endpoint : public config::socket_type { - - // Create a resolver - if (!m_resolver) { -- m_resolver = lib::make_shared( -- lib::ref(*m_io_service)); -+ m_resolver.reset(new lib::asio::ip::tcp::resolver(*m_io_service)); - } - - tcon->set_uri(u);