diff options
| author | Billy O'Neal <bion@microsoft.com> | 2019-08-06 10:35:35 -0700 |
|---|---|---|
| committer | Curtis J Bezault <curtbezault@gmail.com> | 2019-08-06 13:35:35 -0400 |
| commit | 99b00d84760859e55978f1eed4e7db08cb663ee6 (patch) | |
| tree | 6b0f9cb247e3a506390bb5d6ade03755efa21d5c | |
| parent | 450f09c7a8f955ed722acd3791d9080a039da2a0 (diff) | |
| download | vcpkg-99b00d84760859e55978f1eed4e7db08cb663ee6.tar.gz vcpkg-99b00d84760859e55978f1eed4e7db08cb663ee6.zip | |
Repair compression dependency bugs in cpprestsdk (#7472)
* Repair compression dependency bugs in cpprestsdk
* Make it possible to turn off HTTP compression entirely to remove the
zlib dependency in cpprestsdk.
* Use the actual default features feature instead of a default features
feature hack.
* Actually hook up the Brotli setting so that someone installing that
feature actually gets it.
* Attempt to fix default-features.
| -rw-r--r-- | ports/cpprestsdk/CONTROL | 14 | ||||
| -rw-r--r-- | ports/cpprestsdk/portfile.cmake | 17 |
2 files changed, 21 insertions, 10 deletions
diff --git a/ports/cpprestsdk/CONTROL b/ports/cpprestsdk/CONTROL index be8d24045..877164673 100644 --- a/ports/cpprestsdk/CONTROL +++ b/ports/cpprestsdk/CONTROL @@ -1,19 +1,23 @@ Source: cpprestsdk -Version: 2.10.14 -Build-Depends: zlib, openssl (!uwp&!windows), boost-system (!uwp&!windows), boost-date-time (!uwp&!windows), boost-regex (!uwp&!windows), boost-thread (!uwp&!windows), boost-filesystem (!uwp&!windows), boost-random (!uwp&!windows), boost-chrono (!uwp&!windows), boost-asio (!uwp&!windows) +Version: 2.10.14-1 +Build-Depends: openssl (!uwp&!windows), boost-system (!uwp&!windows), boost-date-time (!uwp&!windows), boost-regex (!uwp&!windows), boost-thread (!uwp&!windows), boost-filesystem (!uwp&!windows), boost-random (!uwp&!windows), boost-chrono (!uwp&!windows), boost-asio (!uwp&!windows) Homepage: https://github.com/Microsoft/cpprestsdk Description: C++11 JSON, REST, and OAuth library The C++ REST SDK is a Microsoft project for cloud-based client-server communication in native code using a modern asynchronous C++ API design. This project aims to help C++ developers connect to and interact with services. Default-Features: default-features Feature: default-features -Build-Depends: cpprestsdk[brotli] (windows), cpprestsdk[websockets] +Build-Depends: cpprestsdk[brotli] (windows), cpprestsdk[core], cpprestsdk[compression], cpprestsdk[websockets] Description: Features installed by default +Feature: compression +Build-Depends: zlib +Description: HTTP Compression support + Feature: websockets -Build-Depends: websocketpp (!uwp), openssl (!uwp), boost-system (!uwp), boost-date-time (!uwp), boost-regex (!uwp) +Build-Depends: cpprestsdk[core], cpprestsdk[compression], websocketpp (!uwp), openssl (!uwp), boost-system (!uwp), boost-date-time (!uwp), boost-regex (!uwp) Description: Websockets support Feature: brotli -Build-Depends: brotli +Build-Depends: cpprestsdk[core], cpprestsdk[compression], brotli Description: Brotli compression support diff --git a/ports/cpprestsdk/portfile.cmake b/ports/cpprestsdk/portfile.cmake index 8add4c1ab..4a6dad142 100644 --- a/ports/cpprestsdk/portfile.cmake +++ b/ports/cpprestsdk/portfile.cmake @@ -16,16 +16,21 @@ if(NOT VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") -DWEBSOCKETPP_CONFIG_VERSION=${WEBSOCKETPP_PATH}) endif() -set(CPPREST_EXCLUDE_WEBSOCKETS ON) -if("websockets" IN_LIST FEATURES) - set(CPPREST_EXCLUDE_WEBSOCKETS OFF) -endif() - set(CPPREST_EXCLUDE_BROTLI ON) if ("brotli" IN_LIST FEATURES) set(CPPREST_EXCLUDE_BROTLI OFF) endif() +set(CPPREST_EXCLUDE_COMPRESSION ON) +if ("compression" IN_LIST FEATURES) + set(CPPREST_EXCLUDE_COMPRESSION OFF) +endif() + +set(CPPREST_EXCLUDE_WEBSOCKETS ON) +if("websockets" IN_LIST FEATURES) + set(CPPREST_EXCLUDE_WEBSOCKETS OFF) +endif() + vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH}/Release PREFER_NINJA @@ -33,6 +38,8 @@ vcpkg_configure_cmake( ${OPTIONS} -DBUILD_TESTS=OFF -DBUILD_SAMPLES=OFF + -DCPPREST_EXCLUDE_BROTLI=${CPPREST_EXCLUDE_BROTLI} + -DCPPREST_EXCLUDE_COMPRESSION=${CPPREST_EXCLUDE_COMPRESSION} -DCPPREST_EXCLUDE_WEBSOCKETS=${CPPREST_EXCLUDE_WEBSOCKETS} -DCPPREST_EXPORT_DIR=share/cpprestsdk -DWERROR=OFF |
