aboutsummaryrefslogtreecommitdiff
path: root/ports/restbed
diff options
context:
space:
mode:
authorMathis Logemann <mathisloge@gmail.com>2020-10-30 20:47:16 +0100
committerGitHub <noreply@github.com>2020-10-30 12:47:16 -0700
commit416bb1c67769a32f7c090408715117bfebb0215e (patch)
tree7a303d434f386616c28a9b544b67cb3eb10ecda1 /ports/restbed
parent20b665e2985e4af6dce0589807c7064df0e84c3b (diff)
downloadvcpkg-416bb1c67769a32f7c090408715117bfebb0215e.tar.gz
vcpkg-416bb1c67769a32f7c090408715117bfebb0215e.zip
[asio] update to version 1.18.0 (#14095) (#14167)
Diffstat (limited to 'ports/restbed')
-rw-r--r--ports/restbed/CONTROL8
-rw-r--r--ports/restbed/add_openssl_support.patch37
-rw-r--r--ports/restbed/asio-1-18-0-deprecations.patch112
-rw-r--r--ports/restbed/cmake.patch59
-rw-r--r--ports/restbed/fix-ninja-duplicates.patch67
-rw-r--r--ports/restbed/portfile.cmake25
-rw-r--r--ports/restbed/use-FindOpenSSL-cmake.patch13
-rw-r--r--ports/restbed/vcpkg.json16
8 files changed, 221 insertions, 116 deletions
diff --git a/ports/restbed/CONTROL b/ports/restbed/CONTROL
deleted file mode 100644
index 7259f92c6..000000000
--- a/ports/restbed/CONTROL
+++ /dev/null
@@ -1,8 +0,0 @@
-Source: restbed
-Version: 4.16-07-28-2018-2
-Description: Corvusoft's Restbed framework brings asynchronous RESTful functionality to C++11 applications.
-Build-Depends: asio
-
-Feature: openssl
-Build-Depends: openssl
-Description: Secure over the wire communication allowing you to transmit private data online.
diff --git a/ports/restbed/add_openssl_support.patch b/ports/restbed/add_openssl_support.patch
deleted file mode 100644
index 72d4dc406..000000000
--- a/ports/restbed/add_openssl_support.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-diff --git a/cmake/Findopenssl.cmake b/cmake/Findopenssl.cmake
-index 8db9799..626ff55 100644
---- a/cmake/Findopenssl.cmake
-+++ b/cmake/Findopenssl.cmake
-@@ -1,24 +1,7 @@
--find_library( ssl_LIBRARY_STATIC libssl.a ssleay32.lib HINTS "${PROJECT_SOURCE_DIR}/dependency/openssl/out32dll" "${PROJECT_SOURCE_DIR}/dependency/openssl" "/usr/local/opt/openssl/lib" "/usr/lib" "/usr/local/lib" "/opt/local/lib" )
--find_library( crypto_LIBRARY_STATIC libcrypto.a libeay32.lib HINTS "${PROJECT_SOURCE_DIR}/dependency/openssl/out32dll" "${PROJECT_SOURCE_DIR}/dependency/openssl" "/usr/local/opt/openssl/lib" "/usr/lib" "/usr/local/lib" "/opt/local/lib" )
--
--find_library( ssl_LIBRARY_SHARED libssl.so libssl.dylib ssleay32.dll HINTS "${PROJECT_SOURCE_DIR}/dependency/openssl/out32dll" "${PROJECT_SOURCE_DIR}/dependency/openssl" "/usr/local/opt/openssl/lib" "/usr/lib" "/usr/local/lib" "/opt/local/lib" )
--find_library( crypto_LIBRARY_SHARED libcrypto.so libcrypto.dylib libeay32.dll HINTS "${PROJECT_SOURCE_DIR}/dependency/openssl/out32dll" "${PROJECT_SOURCE_DIR}/dependency/openssl" "/usr/local/opt/openssl/lib" "/usr/lib" "/usr/local/lib" "/opt/local/lib" )
--
--find_path( ssl_INCLUDE openssl/ssl.h HINTS "${PROJECT_SOURCE_DIR}/dependency/openssl/inc32" "${PROJECT_SOURCE_DIR}/dependency/openssl/include" "/usr/local/opt/openssl/include" "/usr/include" "/usr/local/include" "/opt/local/include" )
--
--if ( ssl_LIBRARY_STATIC AND ssl_LIBRARY_SHARED AND crypto_LIBRARY_STATIC AND crypto_LIBRARY_SHARED )
-- set( OPENSSL_FOUND TRUE )
-- add_definitions( -DBUILD_SSL=TRUE )
--
-- if ( APPLE AND BUILD_SSL )
-- set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-deprecated-declarations" )
-- endif( )
--
-- message( STATUS "Found OpenSSL include at: ${ssl_INCLUDE}" )
-- message( STATUS "Found OpenSSL library at: ${ssl_LIBRARY_STATIC}" )
-- message( STATUS "Found OpenSSL library at: ${ssl_LIBRARY_SHARED}" )
-- message( STATUS "Found Crypto library at: ${crypto_LIBRARY_STATIC}" )
-- message( STATUS "Found Crypto library at: ${crypto_LIBRARY_SHARED}" )
--else ( )
-- message( FATAL_ERROR "Failed to locate OpenSSL dependency. see restbed/dependency/openssl; ./config shared; make all" )
--endif ( )
-+if (BUILD_SSL)
-+ set( OPENSSL_FOUND TRUE )
-+ add_definitions( -DBUILD_SSL=TRUE )
-+ if ( APPLE AND BUILD_SSL )
-+ set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-deprecated-declarations" )
-+ endif( )
-+endif()
-\ No newline at end of file
diff --git a/ports/restbed/asio-1-18-0-deprecations.patch b/ports/restbed/asio-1-18-0-deprecations.patch
new file mode 100644
index 000000000..7007775a2
--- /dev/null
+++ b/ports/restbed/asio-1-18-0-deprecations.patch
@@ -0,0 +1,112 @@
+diff --git a/source/corvusoft/restbed/detail/http_impl.cpp b/source/corvusoft/restbed/detail/http_impl.cpp
+index 77f918a..08d2c9c 100644
+--- a/source/corvusoft/restbed/detail/http_impl.cpp
++++ b/source/corvusoft/restbed/detail/http_impl.cpp
+@@ -153,7 +153,7 @@ namespace restbed
+ {
+ #endif
+ auto socket = make_shared< tcp::socket >( *request->m_pimpl->m_io_service );
+- request->m_pimpl->m_socket = make_shared< SocketImpl >( socket );
++ request->m_pimpl->m_socket = make_shared< SocketImpl >( *request->m_pimpl->m_io_service, socket );
+ #ifdef BUILD_SSL
+ }
+
+@@ -196,7 +196,7 @@ namespace restbed
+ }
+
+ socket->set_verify_callback( asio::ssl::rfc2818_verification( request->get_host( ) ) );
+- request->m_pimpl->m_socket = make_shared< SocketImpl >( socket );
++ request->m_pimpl->m_socket = make_shared< SocketImpl >( *request->m_pimpl->m_io_service, socket );
+ }
+ #endif
+ void HttpImpl::request_handler( const error_code& error, const shared_ptr< Request >& request, const function< void ( const shared_ptr< Request >, const shared_ptr< Response > ) >& callback )
+diff --git a/source/corvusoft/restbed/detail/service_impl.cpp b/source/corvusoft/restbed/detail/service_impl.cpp
+index 6772af1..87be1ce 100644
+--- a/source/corvusoft/restbed/detail/service_impl.cpp
++++ b/source/corvusoft/restbed/detail/service_impl.cpp
+@@ -147,7 +147,7 @@ namespace restbed
+
+ void ServiceImpl::http_listen( void ) const
+ {
+- auto socket = make_shared< tcp::socket >( m_acceptor->get_io_service( ) );
++ auto socket = make_shared< tcp::socket >( *m_io_service );
+ m_acceptor->async_accept( *socket, bind( &ServiceImpl::create_session, this, socket, _1 ) );
+ }
+
+@@ -273,7 +273,7 @@ namespace restbed
+
+ void ServiceImpl::https_listen( void ) const
+ {
+- auto socket = make_shared< asio::ssl::stream< tcp::socket > >( m_ssl_acceptor->get_io_service( ), *m_ssl_context );
++ auto socket = make_shared< asio::ssl::stream< tcp::socket > >( *m_io_service, *m_ssl_context );
+ m_ssl_acceptor->async_accept( socket->lowest_layer( ), bind( &ServiceImpl::create_ssl_session, this, socket, _1 ) );
+ }
+
+@@ -289,7 +289,7 @@ namespace restbed
+ return;
+ }
+
+- auto connection = make_shared< SocketImpl >( socket, m_logger );
++ auto connection = make_shared< SocketImpl >( *m_io_service, socket, m_logger );
+ connection->set_timeout( m_settings->get_connection_timeout( ) );
+ if (m_settings->get_keep_alive()) {
+ connection->set_keep_alive( m_settings->get_keep_alive_start(),
+@@ -530,7 +530,7 @@ namespace restbed
+ {
+ if ( not error )
+ {
+- auto connection = make_shared< SocketImpl >( socket, m_logger );
++ auto connection = make_shared< SocketImpl >( *m_io_service, socket, m_logger );
+ connection->set_timeout( m_settings->get_connection_timeout( ) );
+ if (m_settings->get_keep_alive()) {
+ connection->set_keep_alive( m_settings->get_keep_alive_start(),
+diff --git a/source/corvusoft/restbed/detail/socket_impl.cpp b/source/corvusoft/restbed/detail/socket_impl.cpp
+index fac0082..942eefa 100644
+--- a/source/corvusoft/restbed/detail/socket_impl.cpp
++++ b/source/corvusoft/restbed/detail/socket_impl.cpp
+@@ -49,12 +49,12 @@ namespace restbed
+ {
+ namespace detail
+ {
+- SocketImpl::SocketImpl( const shared_ptr< tcp::socket >& socket, const shared_ptr< Logger >& logger ) : m_error_handler( nullptr ),
++ SocketImpl::SocketImpl( asio::io_context& context, const shared_ptr< tcp::socket >& socket, const shared_ptr< Logger >& logger ) : m_error_handler( nullptr ),
+ m_is_open( socket->is_open( ) ),
+ m_pending_writes( ),
+ m_logger( logger ),
+ m_timeout( 0 ),
+- m_io_service( socket->get_io_service( ) ),
++ m_io_service( context ),
+ m_timer( make_shared< asio::steady_timer >( m_io_service ) ),
+ m_strand( make_shared< io_service::strand > ( m_io_service ) ),
+ m_resolver( nullptr ),
+@@ -66,12 +66,12 @@ namespace restbed
+ return;
+ }
+ #ifdef BUILD_SSL
+- SocketImpl::SocketImpl( const shared_ptr< asio::ssl::stream< tcp::socket > >& socket, const shared_ptr< Logger >& logger ) : m_error_handler( nullptr ),
++ SocketImpl::SocketImpl( asio::io_context& context, const shared_ptr< asio::ssl::stream< tcp::socket > >& socket, const shared_ptr< Logger >& logger ) : m_error_handler( nullptr ),
+ m_is_open( socket->lowest_layer( ).is_open( ) ),
+ m_pending_writes( ),
+ m_logger( logger ),
+ m_timeout( 0 ),
+- m_io_service( socket->get_io_service( ) ),
++ m_io_service( context ),
+ m_timer( make_shared< asio::steady_timer >( m_io_service ) ),
+ m_strand( make_shared< io_service::strand > ( m_io_service ) ),
+ m_resolver( nullptr ),
+diff --git a/source/corvusoft/restbed/detail/socket_impl.hpp b/source/corvusoft/restbed/detail/socket_impl.hpp
+index 41aec42..0977eba 100644
+--- a/source/corvusoft/restbed/detail/socket_impl.hpp
++++ b/source/corvusoft/restbed/detail/socket_impl.hpp
+@@ -53,9 +53,9 @@ namespace restbed
+ //Definitions
+
+ //Constructors
+- SocketImpl( const std::shared_ptr< asio::ip::tcp::socket >& socket, const std::shared_ptr< Logger >& logger = nullptr );
++ SocketImpl( asio::io_context& context, const std::shared_ptr< asio::ip::tcp::socket >& socket, const std::shared_ptr< Logger >& logger = nullptr );
+ #ifdef BUILD_SSL
+- SocketImpl( const std::shared_ptr< asio::ssl::stream< asio::ip::tcp::socket > >& socket, const std::shared_ptr< Logger >& logger = nullptr );
++ SocketImpl( asio::io_context& context, const std::shared_ptr< asio::ssl::stream< asio::ip::tcp::socket > >& socket, const std::shared_ptr< Logger >& logger = nullptr );
+ #endif
+ ~SocketImpl( void ) = default;
+
diff --git a/ports/restbed/cmake.patch b/ports/restbed/cmake.patch
deleted file mode 100644
index 5d73409f9..000000000
--- a/ports/restbed/cmake.patch
+++ /dev/null
@@ -1,59 +0,0 @@
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index b66143e..85c5315 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -42,7 +42,9 @@ endif ( )
- set( CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${PROJECT_SOURCE_DIR}/cmake" )
-
- find_package( asio REQUIRED )
-+if(NOT DISABLE_TESTS)
- find_package( catch REQUIRED )
-+endif()
- if ( BUILD_SSL )
- find_package( openssl REQUIRED )
- endif ( )
-@@ -54,6 +56,7 @@ include_directories( ${INCLUDE_DIR} SYSTEM ${asio_INCLUDE} ${kashmir_INCLUDE} ${
- #
- file( GLOB_RECURSE MANIFEST "${SOURCE_DIR}/*.cpp" )
-
-+if(NOT BUILD_SHARED_LIBS)
- set( STATIC_LIBRARY_NAME "${PROJECT_NAME}-static" )
- add_library( ${STATIC_LIBRARY_NAME} STATIC ${MANIFEST} )
- set_property( TARGET ${STATIC_LIBRARY_NAME} PROPERTY CXX_STANDARD 11 )
-@@ -64,7 +67,9 @@ if ( BUILD_SSL )
- else ( )
- target_link_libraries( ${STATIC_LIBRARY_NAME} )
- endif ( )
-+endif()
-
-+if(BUILD_SHARED_LIBS)
- set( SHARED_LIBRARY_NAME "${PROJECT_NAME}-shared" )
- add_library( ${SHARED_LIBRARY_NAME} SHARED ${MANIFEST} )
- set_property( TARGET ${SHARED_LIBRARY_NAME} PROPERTY CXX_STANDARD 11 )
-@@ -76,12 +81,15 @@ if ( BUILD_SSL )
- else ( )
- target_link_libraries( ${SHARED_LIBRARY_NAME} )
- endif ( )
-+endif()
-
-+if(NOT DISABLE_TESTS)
- enable_testing( )
- add_subdirectory( "${PROJECT_SOURCE_DIR}/test/unit" )
- add_subdirectory( "${PROJECT_SOURCE_DIR}/test/feature" )
- add_subdirectory( "${PROJECT_SOURCE_DIR}/test/regression" )
- add_subdirectory( "${PROJECT_SOURCE_DIR}/test/integration" )
-+endif()
-
- #
- # Install
-@@ -90,5 +98,8 @@ file( GLOB ARTIFACTS "${SOURCE_DIR}/*.hpp" )
-
- install( FILES "${INCLUDE_DIR}/${PROJECT_NAME}" DESTINATION "${CMAKE_INSTALL_PREFIX}/include" )
- install( FILES ${ARTIFACTS} DESTINATION "${CMAKE_INSTALL_PREFIX}/include/corvusoft/${PROJECT_NAME}" )
--install( TARGETS ${STATIC_LIBRARY_NAME} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT library )
--install( TARGETS ${SHARED_LIBRARY_NAME} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT library )
-+if(NOT BUILD_SHARED_LIBS)
-+install( TARGETS ${STATIC_LIBRARY_NAME} RUNTIME DESTINATION bin LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT library )
-+else()
-+install( TARGETS ${SHARED_LIBRARY_NAME} RUNTIME DESTINATION bin LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT library )
-+endif()
diff --git a/ports/restbed/fix-ninja-duplicates.patch b/ports/restbed/fix-ninja-duplicates.patch
new file mode 100644
index 000000000..9b10148cd
--- /dev/null
+++ b/ports/restbed/fix-ninja-duplicates.patch
@@ -0,0 +1,67 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 2fb74b3..602e05d 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -64,26 +64,33 @@ include_directories( ${INCLUDE_DIR} SYSTEM ${asio_INCLUDE} ${ssl_INCLUDE} )
+ # Build
+ #
+ file( GLOB_RECURSE MANIFEST "${SOURCE_DIR}/*.cpp" )
+-
+-set( STATIC_LIBRARY_NAME "${PROJECT_NAME}-static" )
+-add_library( ${STATIC_LIBRARY_NAME} STATIC ${MANIFEST} )
+-set_property( TARGET ${STATIC_LIBRARY_NAME} PROPERTY CXX_STANDARD 14 )
+-set_property( TARGET ${STATIC_LIBRARY_NAME} PROPERTY CXX_STANDARD_REQUIRED ON )
+-set_target_properties( ${STATIC_LIBRARY_NAME} PROPERTIES OUTPUT_NAME ${PROJECT_NAME} )
+-
+-set( SHARED_LIBRARY_NAME "${PROJECT_NAME}-shared" )
+-add_library( ${SHARED_LIBRARY_NAME} SHARED ${MANIFEST} )
+-set_property( TARGET ${SHARED_LIBRARY_NAME} PROPERTY CXX_STANDARD 14 )
+-set_property( TARGET ${SHARED_LIBRARY_NAME} PROPERTY CXX_STANDARD_REQUIRED ON )
+-set_target_properties( ${SHARED_LIBRARY_NAME} PROPERTIES OUTPUT_NAME ${PROJECT_NAME} )
+-set_target_properties( ${SHARED_LIBRARY_NAME} PROPERTIES SOVERSION ${PROJECT_VERSION_MAJOR} VERSION ${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR} )
++if(NOT BUILD_SHARED_LIBS)
++ set( STATIC_LIBRARY_NAME "${PROJECT_NAME}-static" )
++ add_library( ${STATIC_LIBRARY_NAME} STATIC ${MANIFEST} )
++ set_property( TARGET ${STATIC_LIBRARY_NAME} PROPERTY CXX_STANDARD 14 )
++ set_property( TARGET ${STATIC_LIBRARY_NAME} PROPERTY CXX_STANDARD_REQUIRED ON )
++ set_target_properties( ${STATIC_LIBRARY_NAME} PROPERTIES OUTPUT_NAME ${PROJECT_NAME} )
++else()
++ set( SHARED_LIBRARY_NAME "${PROJECT_NAME}-shared" )
++ add_library( ${SHARED_LIBRARY_NAME} SHARED ${MANIFEST} )
++ set_property( TARGET ${SHARED_LIBRARY_NAME} PROPERTY CXX_STANDARD 14 )
++ set_property( TARGET ${SHARED_LIBRARY_NAME} PROPERTY CXX_STANDARD_REQUIRED ON )
++ set_target_properties( ${SHARED_LIBRARY_NAME} PROPERTIES OUTPUT_NAME ${PROJECT_NAME} )
++ set_target_properties( ${SHARED_LIBRARY_NAME} PROPERTIES SOVERSION ${PROJECT_VERSION_MAJOR} VERSION ${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR} )
++endif()
+
+ if ( BUILD_SSL )
+- target_link_libraries( ${SHARED_LIBRARY_NAME} LINK_PRIVATE ${ssl_LIBRARY_SHARED} ${crypto_LIBRARY_SHARED} )
+- target_link_libraries( ${STATIC_LIBRARY_NAME} LINK_PRIVATE ${ssl_LIBRARY_STATIC} ${crypto_LIBRARY_STATIC} ${CMAKE_DL_LIBS} )
++ if(BUILD_SHARED_LIBS)
++ target_link_libraries( ${SHARED_LIBRARY_NAME} LINK_PRIVATE ${ssl_LIBRARY_SHARED} ${crypto_LIBRARY_SHARED} )
++ else()
++ target_link_libraries( ${STATIC_LIBRARY_NAME} LINK_PRIVATE ${ssl_LIBRARY_STATIC} ${crypto_LIBRARY_STATIC} ${CMAKE_DL_LIBS} )
++ endif()
+ else ( )
+- target_link_libraries( ${SHARED_LIBRARY_NAME} )
+- target_link_libraries( ${STATIC_LIBRARY_NAME} ${CMAKE_DL_LIBS} )
++ if(BUILD_SHARED_LIBS)
++ target_link_libraries( ${SHARED_LIBRARY_NAME} )
++ else()
++ target_link_libraries( ${STATIC_LIBRARY_NAME} ${CMAKE_DL_LIBS} )
++ endif()
+ endif ( )
+
+ if ( BUILD_TESTS )
+@@ -103,5 +110,8 @@ file( GLOB ARTIFACTS "${SOURCE_DIR}/*.hpp" )
+
+ install( FILES "${INCLUDE_DIR}/${PROJECT_NAME}" DESTINATION "${CMAKE_INSTALL_PREFIX}/include" )
+ install( FILES ${ARTIFACTS} DESTINATION "${CMAKE_INSTALL_PREFIX}/include/corvusoft/${PROJECT_NAME}" )
+-install( TARGETS ${STATIC_LIBRARY_NAME} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT library )
+-install( TARGETS ${SHARED_LIBRARY_NAME} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT library )
++if(NOT BUILD_SHARED_LIBS)
++ install( TARGETS ${STATIC_LIBRARY_NAME} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT library )
++else()
++ install( TARGETS ${SHARED_LIBRARY_NAME} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT library )
++endif()
+\ No newline at end of file
diff --git a/ports/restbed/portfile.cmake b/ports/restbed/portfile.cmake
index 5cfa601f3..dd9b4df45 100644
--- a/ports/restbed/portfile.cmake
+++ b/ports/restbed/portfile.cmake
@@ -1,28 +1,29 @@
vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
-set(USE_OPENSSL OFF)
-if("openssl" IN_LIST FEATURES)
- set(ADDITIONAL_PATCH "add_openssl_support.patch")
- set(USE_OPENSSL ON)
-endif()
+vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
+ openssl BUILD_SSL
+)
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO Corvusoft/restbed
- REF 0f8af8d8ed183a88e208adeb22da0080d5d74d1e
- SHA512 f0175a10c88f1ad4f16c8e4cff7ceea7b80c56b0724b59791c23e91f1ecf146dfdbda9e9238d31a35f21d8cdcc413b586cc633725dd0ba87de6b599a7087916f
+ REF 4.7
+ SHA512 f8aaa89ae5c862253f9a480fefa8827927e3a6c13c51938bbcd6c28ac4e6d54496ecf51610343e9a3efe3e969314f643a487506c606a65f56125b51ab8478652
HEAD_REF master
PATCHES
- cmake.patch
- ${ADDITIONAL_PATCH}
+ use-FindOpenSSL-cmake.patch
+ asio-1-18-0-deprecations.patch #https://github.com/Corvusoft/restbed/pull/444/files
+ fix-ninja-duplicates.patch
)
+file(REMOVE ${SOURCE_PATH}/cmake/Findopenssl.cmake)
+
vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
PREFER_NINJA
OPTIONS
- -DBUILD_SSL=${USE_OPENSSL}
- -DDISABLE_TESTS=ON
+ ${FEATURE_OPTIONS}
+ -DBUILD_TESTS=OFF
)
vcpkg_install_cmake()
@@ -31,4 +32,4 @@ vcpkg_install_cmake()
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
# Handle copyright
-configure_file(${SOURCE_PATH}/LICENSE ${CURRENT_PACKAGES_DIR}/share/restbed/copyright COPYONLY)
+configure_file(${SOURCE_PATH}/LICENSE ${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright COPYONLY)
diff --git a/ports/restbed/use-FindOpenSSL-cmake.patch b/ports/restbed/use-FindOpenSSL-cmake.patch
new file mode 100644
index 000000000..efba4cbcf
--- /dev/null
+++ b/ports/restbed/use-FindOpenSSL-cmake.patch
@@ -0,0 +1,13 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 1ec4f07..2fb74b3 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -55,7 +55,7 @@ set( CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${PROJECT_SOURCE_DIR}/cmake" )
+ find_package( asio REQUIRED )
+
+ if ( BUILD_SSL )
+- find_package( openssl REQUIRED )
++ find_package( OpenSSL REQUIRED )
+ endif ( )
+
+ include_directories( ${INCLUDE_DIR} SYSTEM ${asio_INCLUDE} ${ssl_INCLUDE} )
diff --git a/ports/restbed/vcpkg.json b/ports/restbed/vcpkg.json
new file mode 100644
index 000000000..d06ab063c
--- /dev/null
+++ b/ports/restbed/vcpkg.json
@@ -0,0 +1,16 @@
+{
+ "name": "restbed",
+ "version-string": "4.7",
+ "description": "Corvusoft's Restbed framework brings asynchronous RESTful functionality to C++14 applications.",
+ "dependencies": [
+ "asio"
+ ],
+ "features": {
+ "openssl": {
+ "description": "Secure over the wire communication allowing you to transmit private data online.",
+ "dependencies": [
+ "openssl"
+ ]
+ }
+ }
+}