1
0
mirror of https://git.FreeBSD.org/ports.git synced 2025-01-07 06:40:06 +00:00

- Update to version 2.10.16 to unbreak the build against newer OpenSSL

- Allow to build with optional Brotli compression support while here
This commit is contained in:
Alexey Dokuchaev 2020-09-09 07:15:14 +00:00
parent af988b48eb
commit 27f09d09da
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=548064
7 changed files with 18 additions and 161 deletions

View File

@ -1,9 +1,8 @@
# $FreeBSD$
PORTNAME= cpprestsdk
PORTVERSION= 2.9.1
PORTVERSION= 2.10.16
DISTVERSIONPREFIX= v
PORTREVISION= 13
CATEGORIES= devel
MAINTAINER= projects@phess.net
@ -14,20 +13,21 @@ LICENSE_FILE= ${WRKSRC}/../license.txt
BROKEN_powerpc64= fails to compile: threadpool.h:59:25: conversion to 'int' from 'size_t {aka long unsigned int}' may alter its value
BUILD_DEPENDS= ${LOCALBASE}/include/websocketpp/client.hpp:devel/websocketpp
LIB_DEPENDS= libboost_system.so:devel/boost-libs
USES= cmake compiler:c++11-lib ssl
USES= cmake compiler:c++11-lang pkgconfig ssl
USE_LDCONFIG= yes
USE_GITHUB= yes
GH_ACCOUNT= Microsoft
WRKSRC_SUBDIR= Release
CMAKE_OFF= BUILD_SAMPLES BUILD_TESTS
.include <bsd.port.pre.mk>
CXXFLAGS+= -Wno-c11-extensions
.if ${SSL_DEFAULT} == base
BROKEN_FreeBSD_12= use of undeclared identifier 'SSL_R_SHORT_READ'
BROKEN_FreeBSD_13= use of undeclared identifier 'SSL_R_SHORT_READ'
.endif
OPTIONS_DEFINE= BROTLI
.include <bsd.port.post.mk>
BROTLI_LIB_DEPENDS= libbrotlidec.so:archivers/brotli
BROTLI_CMAKE_ON= -DCPPREST_EXCLUDE_BROTLI:BOOL=OFF
.include <bsd.port.mk>

View File

@ -1,3 +1,3 @@
TIMESTAMP = 1484223440
SHA256 (Microsoft-cpprestsdk-v2.9.1_GH0.tar.gz) = 7097889965df48ec5799d6ed3b4f95f16ca82ee3512eb31db844d9df600bc899
SIZE (Microsoft-cpprestsdk-v2.9.1_GH0.tar.gz) = 1601475
TIMESTAMP = 1587775456
SHA256 (Microsoft-cpprestsdk-v2.10.16_GH0.tar.gz) = 3d75e17c7d79131320438f2a15331f7ca6281c38c0e2daa27f051e290eeb8681
SIZE (Microsoft-cpprestsdk-v2.10.16_GH0.tar.gz) = 1768423

View File

@ -1,34 +0,0 @@
This fixes the build against Boost 1.66
In file included from src/websockets/client/ws_client_wspp.cpp:28:
In file included from libs/websocketpp/websocketpp/config/asio_client.hpp:32:
In file included from libs/websocketpp/websocketpp/transport/asio/endpoint.hpp:32:
libs/websocketpp/websocketpp/transport/asio/connection.hpp:425:24: error: no matching function for call to 'make_shared'
m_strand = lib::make_shared<boost::asio::strand>(
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/v1/memory:4642:1: note: candidate template ignored: invalid explicitly-specified argument for template parameter '_Tp'
make_shared(_Args&& ...__args)
^
From 6b2e0480018530b616f61d5cdc786c92ba148bb7 Mon Sep 17 00:00:00 2001
From: John Hruby <johnh@vitrium.com>
Date: Tue, 26 Dec 2017 16:52:13 +0100
Subject: [PATCH] fixed strand
---
Release/libs/websocketpp/websocketpp/transport/asio/connection.hpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Release/libs/websocketpp/websocketpp/transport/asio/connection.hpp b/Release/libs/websocketpp/websocketpp/transport/asio/connection.hpp
index 0be40f6b..395632c3 100644
--- libs/websocketpp/websocketpp/transport/asio/connection.hpp
+++ libs/websocketpp/websocketpp/transport/asio/connection.hpp
@@ -422,7 +422,7 @@ class connection : public config::socket_type::socket_con_type {
m_io_service = io_service;
if (config::enable_multithreading) {
- m_strand = lib::make_shared<boost::asio::strand>(
+ m_strand = lib::make_shared<boost::asio::io_service::strand>(
lib::ref(*io_service));
m_async_read_handler = m_strand->wrap(lib::bind(

View File

@ -1,36 +0,0 @@
This fixes the build on FreeBSD 12+ (with clang 5).
src/uri/uri.cpp:25:73: error: lambda capture 'this' is not used [-Werror,-Wunused-lambda-capture]
std::transform(m_scheme.begin(), m_scheme.end(), m_scheme.begin(), [this](utility::char_t c) {
src/uri/uri.cpp:30:67: error: lambda capture 'this' is not used [-Werror,-Wunused-lambda-capture]
std::transform(m_host.begin(), m_host.end(), m_host.begin(), [this](utility::char_t c) {
From 70c1b14f39f5d47984fdd8a31fc357ebb5a37851 Mon Sep 17 00:00:00 2001
From: Force Charlie <ipvb@qq.com>
Date: Thu, 20 Jul 2017 14:39:21 +0800
Subject: [PATCH] fix lambda capture 'this' is not used, clang 5.0 on ubuntu
16.04
---
Release/src/uri/uri.cpp | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/Release/src/uri/uri.cpp b/Release/src/uri/uri.cpp
index fb395edf..3157b96a 100644
--- src/uri/uri.cpp
+++ src/uri/uri.cpp
@@ -22,12 +22,12 @@ utility::string_t uri_components::join()
// canonicalize components first
// convert scheme to lowercase
- std::transform(m_scheme.begin(), m_scheme.end(), m_scheme.begin(), [this](utility::char_t c) {
+ std::transform(m_scheme.begin(), m_scheme.end(), m_scheme.begin(), [](utility::char_t c) {
return (utility::char_t)tolower(c);
});
// convert host to lowercase
- std::transform(m_host.begin(), m_host.end(), m_host.begin(), [this](utility::char_t c) {
+ std::transform(m_host.begin(), m_host.end(), m_host.begin(), [](utility::char_t c) {
return (utility::char_t)tolower(c);
});

View File

@ -1,12 +0,0 @@
https://github.com/Microsoft/cpprestsdk/issues/747
--- include/pplx/pplxlinux.h.orig 2016-10-28 19:20:12 UTC
+++ include/pplx/pplxlinux.h
@@ -240,6 +240,7 @@ namespace platform
{
public:
_PPLXIMP virtual void schedule( TaskProc_t proc, _In_ void* param);
+ virtual ~linux_scheduler() {}
};
} // namespace details

View File

@ -1,62 +0,0 @@
https://github.com/zaphoyd/websocketpp/issues/794
--- libs/websocketpp/websocketpp/transport/asio/connection.hpp.orig 2016-10-28 19:20:12 UTC
+++ libs/websocketpp/websocketpp/transport/asio/connection.hpp
@@ -296,7 +296,7 @@ class connection : public config::socket_type::socket_
*/
timer_ptr set_timer(long duration, timer_handler callback) {
timer_ptr new_timer = lib::make_shared<boost::asio::deadline_timer>(
- lib::ref(*m_io_service),
+ *m_io_service,
boost::posix_time::milliseconds(duration)
);
@@ -423,7 +423,7 @@ class connection : public config::socket_type::socket_
if (config::enable_multithreading) {
m_strand = lib::make_shared<boost::asio::io_service::strand>(
- lib::ref(*io_service));
+ *io_service);
m_async_read_handler = m_strand->wrap(lib::bind(
&type::handle_async_read, get_shared(),lib::placeholders::_1,
--- libs/websocketpp/websocketpp/transport/asio/endpoint.hpp.orig 2016-10-28 19:20:12 UTC
+++ libs/websocketpp/websocketpp/transport/asio/endpoint.hpp
@@ -184,7 +184,7 @@ class endpoint : public config::socket_type { (public)
m_io_service = ptr;
m_external_io_service = true;
m_acceptor = lib::make_shared<boost::asio::ip::tcp::acceptor>(
- lib::ref(*m_io_service));
+ *m_io_service);
m_state = READY;
ec = lib::error_code();
@@ -610,7 +610,7 @@ class endpoint : public config::socket_type { (public)
*/
void start_perpetual() {
m_work = lib::make_shared<boost::asio::io_service::work>(
- lib::ref(*m_io_service)
+ *m_io_service
);
}
@@ -776,7 +776,7 @@ class endpoint : public config::socket_type { (public)
// Create a resolver
if (!m_resolver) {
m_resolver = lib::make_shared<boost::asio::ip::tcp::resolver>(
- lib::ref(*m_io_service));
+ *m_io_service);
}
std::string proxy = tcon->get_proxy();
--- libs/websocketpp/websocketpp/transport/asio/security/none.hpp.orig 2016-10-28 19:20:12 UTC
+++ libs/websocketpp/websocketpp/transport/asio/security/none.hpp
@@ -167,7 +167,7 @@ class connection : public lib::enable_shared_from_this
}
m_socket = lib::make_shared<boost::asio::ip::tcp::socket>(
- lib::ref(*service));
+ *service);
m_state = READY;

View File

@ -10,15 +10,12 @@ include/cpprest/details/http_constants.dat
include/cpprest/details/http_helpers.h
include/cpprest/details/http_server.h
include/cpprest/details/http_server_api.h
include/cpprest/details/http_server_asio.h
include/cpprest/details/http_server_httpsys.h
include/cpprest/details/nosal.h
include/cpprest/details/resource.h
include/cpprest/details/uri_parser.h
include/cpprest/details/web_utilities.h
include/cpprest/details/x509_cert_utilities.h
include/cpprest/filestream.h
include/cpprest/http_client.h
include/cpprest/http_compression.h
include/cpprest/http_headers.h
include/cpprest/http_listener.h
include/cpprest/http_msg.h
@ -42,5 +39,9 @@ include/pplx/pplxlinux.h
include/pplx/pplxtasks.h
include/pplx/pplxwin.h
include/pplx/threadpool.h
lib/cmake/cpprestsdk/cpprestsdk-config-version.cmake
lib/cmake/cpprestsdk/cpprestsdk-config.cmake
lib/cmake/cpprestsdk/cpprestsdk-targets-%%CMAKE_BUILD_TYPE%%.cmake
lib/cmake/cpprestsdk/cpprestsdk-targets.cmake
lib/libcpprest.so
lib/libcpprest.so.2.9
lib/libcpprest.so.2.10