diff options
| author | Gianfranco Costamagna <costamagna.gianfranco@gmail.com> | 2018-07-23 18:47:54 +0200 |
|---|---|---|
| committer | Khem Raj <raj.khem@gmail.com> | 2018-07-26 20:10:07 -0700 |
| commit | cff57daf6507f4b449e62678606d4988555dc6aa (patch) | |
| tree | c30229a6ed037a1e7a166a846e6408d806e9f08a /meta-oe/recipes-support/cpprest | |
| parent | 4ad49edc90f4ff73a19accda4f12ef33b46effd1 (diff) | |
| download | meta-openembedded-cff57daf6507f4b449e62678606d4988555dc6aa.tar.gz | |
meta-oe: update cpprest with patches uploaded in Debian, add upstream proposed gcc-8 patch, add boost 1.63 build fix patch
Signed-off-by: Gianfranco Costamagna <costamagnagianfranco@yahoo.it>
Signed-off-by: Gianfranco Costamagna <locutusofborg@debian.org>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Diffstat (limited to 'meta-oe/recipes-support/cpprest')
| -rw-r--r-- | meta-oe/recipes-support/cpprest/cpprest-2.10.2/0001-disable-more-Werror-warnings.patch | 48 | ||||
| -rw-r--r-- | meta-oe/recipes-support/cpprest/cpprest-2.10.2/0002-Define-virtual-destructor.patch | 28 | ||||
| -rw-r--r-- | meta-oe/recipes-support/cpprest/cpprest-2.10.2/732.patch (renamed from meta-oe/recipes-support/cpprest/cpprest-2.10.2/0001-Fix-a-build-problem-on-Clang.patch) | 5 | ||||
| -rw-r--r-- | meta-oe/recipes-support/cpprest/cpprest-2.10.2/747.patch | 12 | ||||
| -rw-r--r-- | meta-oe/recipes-support/cpprest/cpprest-2.10.2/787.patch | 32 | ||||
| -rw-r--r-- | meta-oe/recipes-support/cpprest/cpprest-2.10.2/boost-fix.patch | 14 | ||||
| -rw-r--r-- | meta-oe/recipes-support/cpprest/cpprest-2.10.2/disable-float-tests.patch | 25 | ||||
| -rw-r--r-- | meta-oe/recipes-support/cpprest/cpprest-2.10.2/disable-outside-tests.patch | 142 | ||||
| -rw-r--r-- | meta-oe/recipes-support/cpprest/cpprest-2.10.2/disable-test-timeouts.patch | 103 | ||||
| -rw-r--r-- | meta-oe/recipes-support/cpprest/cpprest-2.10.2/fix-cmake-install.patch | 50 | ||||
| -rw-r--r-- | meta-oe/recipes-support/cpprest/cpprest_2.10.2.bb | 11 |
11 files changed, 382 insertions, 88 deletions
diff --git a/meta-oe/recipes-support/cpprest/cpprest-2.10.2/0001-disable-more-Werror-warnings.patch b/meta-oe/recipes-support/cpprest/cpprest-2.10.2/0001-disable-more-Werror-warnings.patch deleted file mode 100644 index febfd5bc96..0000000000 --- a/meta-oe/recipes-support/cpprest/cpprest-2.10.2/0001-disable-more-Werror-warnings.patch +++ /dev/null | |||
| @@ -1,48 +0,0 @@ | |||
| 1 | From ee92f84a96a507b0a7a3c54929ce190ee28b4ecd Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Alexander Moriarty <amoriarty@fetchrobotics.com> | ||
| 3 | Date: Wed, 6 Jun 2018 10:38:43 -0700 | ||
| 4 | Subject: [PATCH] disable more -Werror warnings | ||
| 5 | |||
| 6 | gcc-8: -Wno-format-truncation | ||
| 7 | |||
| 8 | clang-6: -Wdelete-non-virtual-dtor | ||
| 9 | clang-6: -Wunused-lambda-capture | ||
| 10 | |||
| 11 | removed duplicated: -Wno-reorder | ||
| 12 | |||
| 13 | This fixes #778 | ||
| 14 | |||
| 15 | Upstream-Status: Pending [https://github.com/Microsoft/cpprestsdk/pull/779] | ||
| 16 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
| 17 | --- | ||
| 18 | Release/CMakeLists.txt | 6 +++--- | ||
| 19 | 1 file changed, 3 insertions(+), 3 deletions(-) | ||
| 20 | |||
| 21 | diff --git a/Release/CMakeLists.txt b/Release/CMakeLists.txt | ||
| 22 | index 1267aff1..fb291ccd 100644 | ||
| 23 | --- a/Release/CMakeLists.txt | ||
| 24 | +++ b/Release/CMakeLists.txt | ||
| 25 | @@ -166,12 +166,12 @@ if(CMAKE_CXX_COMPILER_ID MATCHES "Clang" OR IOS) | ||
| 26 | set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-attributes -Wno-pointer-arith") | ||
| 27 | elseif(CMAKE_SYSTEM_NAME MATCHES "Linux") | ||
| 28 | set(WARNINGS -Wall -Wextra -Wcast-qual -Wconversion -Wformat=2 -Winit-self -Winvalid-pch -Wmissing-format-attribute -Wmissing-include-dirs -Wpacked -Wredundant-decls) | ||
| 29 | - set(LINUX_SUPPRESSIONS -Wno-overloaded-virtual -Wno-sign-conversion -Wno-deprecated -Wno-unknown-pragmas -Wno-reorder -Wno-char-subscripts -Wno-switch -Wno-unused-parameter -Wno-unused-variable -Wno-deprecated -Wno-unused-value -Wno-unknown-warning-option -Wno-return-type-c-linkage -Wno-unused-function -Wno-sign-compare -Wno-shorten-64-to-32 -Wno-reorder -Wno-unused-local-typedefs) | ||
| 30 | + set(LINUX_SUPPRESSIONS -Wno-overloaded-virtual -Wno-sign-conversion -Wno-deprecated -Wno-unknown-pragmas -Wno-reorder -Wno-char-subscripts -Wno-switch -Wno-unused-parameter -Wno-unused-variable -Wno-deprecated -Wno-unused-value -Wno-unknown-warning-option -Wno-return-type-c-linkage -Wno-unused-function -Wno-sign-compare -Wno-shorten-64-to-32 -Wno-unused-local-typedefs -Wno-delete-non-virtual-dtor -Wno-unused-lambda-capture) | ||
| 31 | set(WARNINGS ${WARNINGS} ${LINUX_SUPPRESSIONS}) | ||
| 32 | set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-return-type-c-linkage -Wno-unneeded-internal-declaration") | ||
| 33 | else() | ||
| 34 | set(WARNINGS -Wall -Wextra -Wcast-qual -Wconversion -Wformat=2 -Winit-self -Winvalid-pch -Wmissing-format-attribute -Wmissing-include-dirs -Wpacked -Wredundant-decls) | ||
| 35 | - set(OSX_SUPPRESSIONS -Wno-overloaded-virtual -Wno-sign-conversion -Wno-deprecated -Wno-unknown-pragmas -Wno-reorder -Wno-char-subscripts -Wno-switch -Wno-unused-parameter -Wno-unused-variable -Wno-deprecated -Wno-unused-value -Wno-unknown-warning-option -Wno-return-type-c-linkage -Wno-unused-function -Wno-sign-compare -Wno-shorten-64-to-32 -Wno-reorder -Wno-unused-local-typedefs) | ||
| 36 | + set(OSX_SUPPRESSIONS -Wno-overloaded-virtual -Wno-sign-conversion -Wno-deprecated -Wno-unknown-pragmas -Wno-reorder -Wno-char-subscripts -Wno-switch -Wno-unused-parameter -Wno-unused-variable -Wno-deprecated -Wno-unused-value -Wno-unknown-warning-option -Wno-return-type-c-linkage -Wno-unused-function -Wno-sign-compare -Wno-shorten-64-to-32 -Wno-unused-local-typedefs -Wno-delete-non-virtual-dtor -Wno-unused-lambda-capture) | ||
| 37 | set(WARNINGS ${WARNINGS} ${OSX_SUPPRESSIONS}) | ||
| 38 | |||
| 39 | set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -stdlib=libc++ -Wno-return-type-c-linkage -Wno-unneeded-internal-declaration") | ||
| 40 | @@ -184,7 +184,7 @@ if(CMAKE_CXX_COMPILER_ID MATCHES "Clang" OR IOS) | ||
| 41 | elseif(CMAKE_CXX_COMPILER_ID MATCHES "GNU") | ||
| 42 | message("-- Setting gcc options") | ||
| 43 | |||
| 44 | - set(WARNINGS -Wall -Wextra -Wunused-parameter -Wcast-align -Wcast-qual -Wconversion -Wformat=2 -Winit-self -Winvalid-pch -Wmissing-format-attribute -Wmissing-include-dirs -Wpacked -Wredundant-decls -Wunreachable-code) | ||
| 45 | + set(WARNINGS -Wall -Wextra -Wunused-parameter -Wcast-align -Wcast-qual -Wconversion -Wformat=2 -Winit-self -Winvalid-pch -Wmissing-format-attribute -Wmissing-include-dirs -Wpacked -Wredundant-decls -Wunreachable-code -Wno-format-truncation) | ||
| 46 | set(LD_FLAGS "${LD_FLAGS} -Wl,-z,defs") | ||
| 47 | |||
| 48 | set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -fno-strict-aliasing") | ||
diff --git a/meta-oe/recipes-support/cpprest/cpprest-2.10.2/0002-Define-virtual-destructor.patch b/meta-oe/recipes-support/cpprest/cpprest-2.10.2/0002-Define-virtual-destructor.patch deleted file mode 100644 index 34cbe66974..0000000000 --- a/meta-oe/recipes-support/cpprest/cpprest-2.10.2/0002-Define-virtual-destructor.patch +++ /dev/null | |||
| @@ -1,28 +0,0 @@ | |||
| 1 | From 816d183eb0fe9ab4607cb049b4b792f8df84d5fe Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Khem Raj <raj.khem@gmail.com> | ||
| 3 | Date: Tue, 22 May 2018 22:17:43 -0700 | ||
| 4 | Subject: [PATCH] Define virtual destructor | ||
| 5 | |||
| 6 | Fixes | ||
| 7 | error: destructor called on non-final 'pplx::details::linux_scheduler' that has virtual functions but non-virtual destructor [-Werror,-Wdelete-non-virtual-dtor] | ||
| 8 | __data_.second().~_Tp(); | ||
| 9 | |||
| 10 | Upstream-Status: Pending [https://github.com/Microsoft/cpprestsdk/issues/747] | ||
| 11 | |||
| 12 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
| 13 | --- | ||
| 14 | Release/include/pplx/pplxlinux.h | 1 + | ||
| 15 | 1 file changed, 1 insertion(+) | ||
| 16 | |||
| 17 | diff --git a/Release/include/pplx/pplxlinux.h b/Release/include/pplx/pplxlinux.h | ||
| 18 | index 6aa1ba35..f3f8d70d 100644 | ||
| 19 | --- a/Release/include/pplx/pplxlinux.h | ||
| 20 | +++ b/Release/include/pplx/pplxlinux.h | ||
| 21 | @@ -240,6 +240,7 @@ namespace platform | ||
| 22 | { | ||
| 23 | public: | ||
| 24 | _PPLXIMP virtual void schedule( TaskProc_t proc, _In_ void* param); | ||
| 25 | + virtual ~linux_scheduler() {} | ||
| 26 | }; | ||
| 27 | |||
| 28 | } // namespace details | ||
diff --git a/meta-oe/recipes-support/cpprest/cpprest-2.10.2/0001-Fix-a-build-problem-on-Clang.patch b/meta-oe/recipes-support/cpprest/cpprest-2.10.2/732.patch index dc6b9dfcab..9fcffbfed2 100644 --- a/meta-oe/recipes-support/cpprest/cpprest-2.10.2/0001-Fix-a-build-problem-on-Clang.patch +++ b/meta-oe/recipes-support/cpprest/cpprest-2.10.2/732.patch | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | From 0c07931f77aa9df2da065b633ae66faad5a570ec Mon Sep 17 00:00:00 2001 | 1 | From 3d8caad3f459d8b2136c5bc9be7fdec53e5d777d Mon Sep 17 00:00:00 2001 |
| 2 | From: Wu Yongwei <wuyongwei@gmail.com> | 2 | From: Wu Yongwei <wuyongwei@gmail.com> |
| 3 | Date: Tue, 10 Apr 2018 11:29:12 +0800 | 3 | Date: Tue, 10 Apr 2018 11:29:12 +0800 |
| 4 | Subject: [PATCH] Fix a build problem on Clang. | 4 | Subject: [PATCH] Fix a build problem on Clang. |
| @@ -6,9 +6,6 @@ Subject: [PATCH] Fix a build problem on Clang. | |||
| 6 | AND_CAPTURE_MEMBER_FUNCTION_POINTERS workaround had a check for GCC, | 6 | AND_CAPTURE_MEMBER_FUNCTION_POINTERS workaround had a check for GCC, |
| 7 | but did not exclude Clang. Clang has a fake GCC version of 4.2, thus | 7 | but did not exclude Clang. Clang has a fake GCC version of 4.2, thus |
| 8 | caused problems. | 8 | caused problems. |
| 9 | |||
| 10 | Upstream-Status: Backport [https://github.com/Microsoft/cpprestsdk/pull/732] | ||
| 11 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
| 12 | --- | 9 | --- |
| 13 | Release/src/http/client/http_client_asio.cpp | 2 +- | 10 | Release/src/http/client/http_client_asio.cpp | 2 +- |
| 14 | 1 file changed, 1 insertion(+), 1 deletion(-) | 11 | 1 file changed, 1 insertion(+), 1 deletion(-) |
diff --git a/meta-oe/recipes-support/cpprest/cpprest-2.10.2/747.patch b/meta-oe/recipes-support/cpprest/cpprest-2.10.2/747.patch new file mode 100644 index 0000000000..94bb005989 --- /dev/null +++ b/meta-oe/recipes-support/cpprest/cpprest-2.10.2/747.patch | |||
| @@ -0,0 +1,12 @@ | |||
| 1 | Description: fix for upstream issue 747, clang 6 build error | ||
| 2 | From: rozhuk-im | ||
| 3 | --- a/Release/include/pplx/pplxlinux.h 2018-04-29 16:22:39.927675000 +0300 | ||
| 4 | +++ b/Release/include/pplx/pplxlinux.h 2018-04-29 16:22:57.809537000 +0300 | ||
| 5 | @@ -240,6 +240,7 @@ | ||
| 6 | { | ||
| 7 | public: | ||
| 8 | _PPLXIMP virtual void schedule( TaskProc_t proc, _In_ void* param); | ||
| 9 | + virtual ~linux_scheduler() {} | ||
| 10 | }; | ||
| 11 | |||
| 12 | } // namespace details | ||
diff --git a/meta-oe/recipes-support/cpprest/cpprest-2.10.2/787.patch b/meta-oe/recipes-support/cpprest/cpprest-2.10.2/787.patch new file mode 100644 index 0000000000..359a3ba526 --- /dev/null +++ b/meta-oe/recipes-support/cpprest/cpprest-2.10.2/787.patch | |||
| @@ -0,0 +1,32 @@ | |||
| 1 | From 212536f9d66400bef4400c55efd05dd01303c035 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Andreas Stieger <astieger@suse.com> | ||
| 3 | Date: Sun, 17 Jun 2018 13:00:05 +0200 | ||
| 4 | Subject: [PATCH] Fix gcc8 error/warning -Werror=format-truncation= | ||
| 5 | |||
| 6 | utilities::datetime::to_string(): datetime_str and buf were oversized | ||
| 7 | for fitting into output without possible trunctation | ||
| 8 | --- | ||
| 9 | Release/src/utilities/asyncrt_utils.cpp | 7 ++++--- | ||
| 10 | 1 file changed, 4 insertions(+), 3 deletions(-) | ||
| 11 | |||
| 12 | diff --git a/Release/src/utilities/asyncrt_utils.cpp b/Release/src/utilities/asyncrt_utils.cpp | ||
| 13 | index 0e62bdee..be38907c 100644 | ||
| 14 | --- a/Release/src/utilities/asyncrt_utils.cpp | ||
| 15 | +++ b/Release/src/utilities/asyncrt_utils.cpp | ||
| 16 | @@ -691,12 +691,13 @@ utility::string_t datetime::to_string(date_format format) const | ||
| 17 | { | ||
| 18 | // Append fractional second, which is a 7-digit value with no trailing zeros | ||
| 19 | // This way, '1200' becomes '00012' | ||
| 20 | - char buf[9] = { 0 }; | ||
| 21 | + const int max_frac_length = 8; | ||
| 22 | + char buf[max_frac_length+1] = { 0 }; | ||
| 23 | snprintf(buf, sizeof(buf), ".%07ld", (long int)frac_sec); | ||
| 24 | // trim trailing zeros | ||
| 25 | - for (int i = 7; buf[i] == '0'; i--) buf[i] = '\0'; | ||
| 26 | + for (int i = max_frac_length-1; buf[i] == '0'; i--) buf[i] = '\0'; | ||
| 27 | // format the datetime into a separate buffer | ||
| 28 | - char datetime_str[max_dt_length+1] = {0}; | ||
| 29 | + char datetime_str[max_dt_length-max_frac_length-1+1] = {0}; | ||
| 30 | strftime(datetime_str, sizeof(datetime_str), "%Y-%m-%dT%H:%M:%S", &datetime); | ||
| 31 | // now print this buffer into the output buffer | ||
| 32 | snprintf(output, sizeof(output), "%s%sZ", datetime_str, buf); | ||
diff --git a/meta-oe/recipes-support/cpprest/cpprest-2.10.2/boost-fix.patch b/meta-oe/recipes-support/cpprest/cpprest-2.10.2/boost-fix.patch new file mode 100644 index 0000000000..5318a6a103 --- /dev/null +++ b/meta-oe/recipes-support/cpprest/cpprest-2.10.2/boost-fix.patch | |||
| @@ -0,0 +1,14 @@ | |||
| 1 | Origin: https://github.com/Microsoft/cpprestsdk/issues/813 | ||
| 2 | Last-Update: 2018-07-23 | ||
| 3 | |||
| 4 | --- cpprest-2.10.2.orig/Release/libs/websocketpp/websocketpp/transport/asio/security/tls.hpp | ||
| 5 | +++ cpprest-2.10.2/Release/libs/websocketpp/websocketpp/transport/asio/security/tls.hpp | ||
| 6 | @@ -312,7 +312,7 @@ protected: | ||
| 7 | return make_error_code(transport::error::tls_short_read); | ||
| 8 | #else | ||
| 9 | if (ERR_GET_REASON(ec.value()) == boost::asio::ssl::error::stream_truncated) { | ||
| 10 | - return make_error_code(boost::asio::ssl::error::stream_truncated); | ||
| 11 | + return make_error_code(static_cast<std::errc>(boost::asio::ssl::error::stream_truncated)); | ||
| 12 | #endif | ||
| 13 | } else { | ||
| 14 | // We know it is a TLS related error, but otherwise don't know | ||
diff --git a/meta-oe/recipes-support/cpprest/cpprest-2.10.2/disable-float-tests.patch b/meta-oe/recipes-support/cpprest/cpprest-2.10.2/disable-float-tests.patch new file mode 100644 index 0000000000..75f74ec658 --- /dev/null +++ b/meta-oe/recipes-support/cpprest/cpprest-2.10.2/disable-float-tests.patch | |||
| @@ -0,0 +1,25 @@ | |||
| 1 | Description: new toolchain might have increased the float precision | ||
| 2 | Author: Gianfranco Costamagna <locutusofborg@debian.org> | ||
| 3 | Last-Update: 2017-10-28 | ||
| 4 | Forwarded: https://github.com/Microsoft/cpprestsdk/issues/576 | ||
| 5 | |||
| 6 | --- casablanca-2.10.0.orig/Release/tests/functional/streams/istream_tests.cpp | ||
| 7 | +++ casablanca-2.10.0/Release/tests/functional/streams/istream_tests.cpp | ||
| 8 | @@ -1302,7 +1302,7 @@ void compare_float(float expected, float | ||
| 9 | { | ||
| 10 | compare_floating(expected, actual, FLT_EPSILON); | ||
| 11 | } | ||
| 12 | - | ||
| 13 | +/* | ||
| 14 | TEST(extract_floating_point) | ||
| 15 | { | ||
| 16 | std::string test_string; | ||
| 17 | @@ -1349,7 +1349,7 @@ TEST(extract_floating_point) | ||
| 18 | VERIFY_ARE_EQUAL(1 / expected, 1 / actual); | ||
| 19 | } while (!std_istream.eof()); | ||
| 20 | } | ||
| 21 | - | ||
| 22 | +*/ | ||
| 23 | TEST(extract_floating_point_with_exceptions) | ||
| 24 | { | ||
| 25 | std::vector<std::pair<std::string, std::string>> tests; | ||
diff --git a/meta-oe/recipes-support/cpprest/cpprest-2.10.2/disable-outside-tests.patch b/meta-oe/recipes-support/cpprest/cpprest-2.10.2/disable-outside-tests.patch new file mode 100644 index 0000000000..b9b3591c3a --- /dev/null +++ b/meta-oe/recipes-support/cpprest/cpprest-2.10.2/disable-outside-tests.patch | |||
| @@ -0,0 +1,142 @@ | |||
| 1 | Description: Debian forbids calls to external websites. | ||
| 2 | |||
| 3 | Author: Gianfranco Costamagna <costamagnagianfranco@yahoo.it> | ||
| 4 | Origin: Debian | ||
| 5 | Forwarded: not-needed | ||
| 6 | Reviewed-By: Gianfranco Costamagna <costamagnagianfranco@yahoo.it> | ||
| 7 | Last-Update: 2015-11-25 | ||
| 8 | |||
| 9 | Index: casablanca/Release/tests/functional/http/client/CMakeLists.txt | ||
| 10 | =================================================================== | ||
| 11 | --- casablanca.orig/Release/tests/functional/http/client/CMakeLists.txt | ||
| 12 | +++ casablanca/Release/tests/functional/http/client/CMakeLists.txt | ||
| 13 | @@ -9,7 +9,6 @@ | ||
| 14 | multiple_requests.cpp | ||
| 15 | oauth1_tests.cpp | ||
| 16 | oauth2_tests.cpp | ||
| 17 | - outside_tests.cpp | ||
| 18 | pipeline_stage_tests.cpp | ||
| 19 | progress_handler_tests.cpp | ||
| 20 | proxy_tests.cpp | ||
| 21 | Index: casablanca/Release/tests/functional/http/client/authentication_tests.cpp | ||
| 22 | =================================================================== | ||
| 23 | --- casablanca.orig/Release/tests/functional/http/client/authentication_tests.cpp | ||
| 24 | +++ casablanca/Release/tests/functional/http/client/authentication_tests.cpp | ||
| 25 | @@ -663,15 +663,19 @@ | ||
| 26 | VERIFY_ARE_EQUAL(return_code, response.status_code()); | ||
| 27 | } | ||
| 28 | |||
| 29 | +/* | ||
| 30 | TEST(auth_no_data) | ||
| 31 | { | ||
| 32 | auth_test_impl(false); | ||
| 33 | } | ||
| 34 | +*/ | ||
| 35 | |||
| 36 | +/* | ||
| 37 | TEST(unsuccessful_auth_with_basic_cred) | ||
| 38 | { | ||
| 39 | auth_test_impl(true); | ||
| 40 | } | ||
| 41 | +*/ | ||
| 42 | |||
| 43 | TEST_FIXTURE(uri_address, set_user_options_asio_http) | ||
| 44 | { | ||
| 45 | @@ -692,7 +696,7 @@ | ||
| 46 | auto response = client.request(methods::GET).get(); | ||
| 47 | VERIFY_ARE_EQUAL(200, response.status_code()); | ||
| 48 | } | ||
| 49 | - | ||
| 50 | +/* | ||
| 51 | TEST_FIXTURE(uri_address, set_user_options_asio_https) | ||
| 52 | { | ||
| 53 | handle_timeout([] | ||
| 54 | @@ -714,7 +718,7 @@ | ||
| 55 | VERIFY_IS_FALSE(v.empty()); | ||
| 56 | }); | ||
| 57 | } | ||
| 58 | - | ||
| 59 | +*/ | ||
| 60 | #endif | ||
| 61 | |||
| 62 | } // SUITE(authentication_tests) | ||
| 63 | Index: casablanca/Release/tests/functional/websockets/client/authentication_tests.cpp | ||
| 64 | =================================================================== | ||
| 65 | --- casablanca.orig/Release/tests/functional/websockets/client/authentication_tests.cpp | ||
| 66 | +++ casablanca/Release/tests/functional/websockets/client/authentication_tests.cpp | ||
| 67 | @@ -86,7 +86,7 @@ | ||
| 68 | } | ||
| 69 | return false; | ||
| 70 | } | ||
| 71 | - | ||
| 72 | +/* | ||
| 73 | TEST(ssl_test) | ||
| 74 | { | ||
| 75 | websocket_client client; | ||
| 76 | @@ -122,7 +122,7 @@ | ||
| 77 | throw; | ||
| 78 | } | ||
| 79 | } | ||
| 80 | - | ||
| 81 | +*/ | ||
| 82 | // These tests are specific to our websocketpp based implementation. | ||
| 83 | #if !defined(__cplusplus_winrt) | ||
| 84 | |||
| 85 | @@ -153,14 +153,15 @@ | ||
| 86 | throw; | ||
| 87 | } | ||
| 88 | } | ||
| 89 | - | ||
| 90 | +/* | ||
| 91 | // Test specifically for server SignalR team hit interesting cases with. | ||
| 92 | TEST(sni_with_older_server_test) | ||
| 93 | { | ||
| 94 | websocket_client client; | ||
| 95 | sni_test_impl(client); | ||
| 96 | } | ||
| 97 | - | ||
| 98 | +*/ | ||
| 99 | +/* | ||
| 100 | // WinRT doesn't expose option for disabling. | ||
| 101 | // No stable server is available to reliably test this. | ||
| 102 | // The configuration below relies on a timeout in the success case. | ||
| 103 | @@ -188,7 +189,8 @@ | ||
| 104 | throw; | ||
| 105 | } | ||
| 106 | } | ||
| 107 | - | ||
| 108 | +*/ | ||
| 109 | +/* | ||
| 110 | // Winrt doesn't allow explicitly setting server host for SNI. | ||
| 111 | TEST(sni_explicit_hostname) | ||
| 112 | { | ||
| 113 | @@ -199,7 +201,7 @@ | ||
| 114 | websocket_client client(config); | ||
| 115 | sni_test_impl(client); | ||
| 116 | } | ||
| 117 | - | ||
| 118 | +*/ | ||
| 119 | void handshake_error_test_impl(const ::utility::string_t &host) | ||
| 120 | { | ||
| 121 | websocket_client client; | ||
| 122 | Index: casablanca/Release/tests/functional/http/client/connections_and_errors.cpp | ||
| 123 | =================================================================== | ||
| 124 | --- casablanca.orig/Release/tests/functional/http/client/connections_and_errors.cpp | ||
| 125 | +++ casablanca/Release/tests/functional/http/client/connections_and_errors.cpp | ||
| 126 | @@ -415,6 +415,7 @@ | ||
| 127 | } | ||
| 128 | #endif | ||
| 129 | |||
| 130 | +/* | ||
| 131 | // Try to connect to a server on a closed port and cancel the operation. | ||
| 132 | TEST_FIXTURE(uri_address, cancel_bad_port) | ||
| 133 | { | ||
| 134 | @@ -446,7 +447,7 @@ | ||
| 135 | |||
| 136 | VERIFY_THROWS_HTTP_ERROR_CODE(t.get(), std::errc::operation_canceled); | ||
| 137 | } | ||
| 138 | - | ||
| 139 | +*/ | ||
| 140 | } // SUITE(connections_and_errors) | ||
| 141 | |||
| 142 | }}}} | ||
diff --git a/meta-oe/recipes-support/cpprest/cpprest-2.10.2/disable-test-timeouts.patch b/meta-oe/recipes-support/cpprest/cpprest-2.10.2/disable-test-timeouts.patch new file mode 100644 index 0000000000..93c3e8a269 --- /dev/null +++ b/meta-oe/recipes-support/cpprest/cpprest-2.10.2/disable-test-timeouts.patch | |||
| @@ -0,0 +1,103 @@ | |||
| 1 | Description: Some tests takes too long on slow architectures and timeouts | ||
| 2 | We can safely disable them. | ||
| 3 | e.g. | ||
| 4 | Release/tests/functional/http/client/connections_and_errors.cpp:142: error: Failure in request_timeout_microsecond: Test case timed out and is hung. Aborting all remaining test cases. Expected under 180000ms. FAILED | ||
| 5 | |||
| 6 | Index: casablanca/Release/tests/functional/http/client/connections_and_errors.cpp | ||
| 7 | =================================================================== | ||
| 8 | --- casablanca.orig/Release/tests/functional/http/client/connections_and_errors.cpp | ||
| 9 | +++ casablanca/Release/tests/functional/http/client/connections_and_errors.cpp | ||
| 10 | @@ -127,7 +127,7 @@ | ||
| 11 | // Try sending another request. | ||
| 12 | VERIFY_THROWS(client.request(methods::GET).wait(), web::http::http_exception); | ||
| 13 | } | ||
| 14 | - | ||
| 15 | +/* | ||
| 16 | TEST_FIXTURE(uri_address, request_timeout) | ||
| 17 | { | ||
| 18 | test_http_server::scoped_server scoped(m_uri); | ||
| 19 | @@ -146,7 +146,8 @@ | ||
| 20 | #endif | ||
| 21 | t.get(); | ||
| 22 | } | ||
| 23 | - | ||
| 24 | +*/ | ||
| 25 | +/* | ||
| 26 | TEST_FIXTURE(uri_address, request_timeout_microsecond) | ||
| 27 | { | ||
| 28 | pplx::task<test_request*> t; | ||
| 29 | @@ -168,7 +169,7 @@ | ||
| 30 | try { t.get(); } | ||
| 31 | catch (...) {} | ||
| 32 | } | ||
| 33 | - | ||
| 34 | +*/ | ||
| 35 | TEST_FIXTURE(uri_address, invalid_method) | ||
| 36 | { | ||
| 37 | web::http::uri uri(U("http://www.bing.com/")); | ||
| 38 | Index: casablanca/Release/tests/functional/http/listener/requests_tests.cpp | ||
| 39 | =================================================================== | ||
| 40 | --- casablanca.orig/Release/tests/functional/http/listener/requests_tests.cpp | ||
| 41 | +++ casablanca/Release/tests/functional/http/listener/requests_tests.cpp | ||
| 42 | @@ -173,7 +173,7 @@ | ||
| 43 | |||
| 44 | listener.close().wait(); | ||
| 45 | } | ||
| 46 | - | ||
| 47 | +/* | ||
| 48 | TEST_FIXTURE(uri_address, response_order) | ||
| 49 | { | ||
| 50 | http_listener listener(m_uri); | ||
| 51 | @@ -217,7 +217,7 @@ | ||
| 52 | |||
| 53 | listener.close().wait(); | ||
| 54 | } | ||
| 55 | - | ||
| 56 | +*/ | ||
| 57 | TEST_FIXTURE(uri_address, uri_encoding, "Ignore", "Codeplex 201") | ||
| 58 | { | ||
| 59 | http_listener listener(m_uri); | ||
| 60 | Index: casablanca/Release/tests/functional/websockets/client/authentication_tests.cpp | ||
| 61 | =================================================================== | ||
| 62 | --- casablanca.orig/Release/tests/functional/websockets/client/authentication_tests.cpp | ||
| 63 | +++ casablanca/Release/tests/functional/websockets/client/authentication_tests.cpp | ||
| 64 | @@ -221,7 +221,7 @@ | ||
| 65 | VERIFY_ARE_EQUAL("TLS handshake failed", e.error_code().message()); | ||
| 66 | } | ||
| 67 | } | ||
| 68 | - | ||
| 69 | +/* | ||
| 70 | TEST(self_signed_cert) | ||
| 71 | { | ||
| 72 | handshake_error_test_impl(U("wss://self-signed.badssl.com/")); | ||
| 73 | @@ -236,7 +236,7 @@ | ||
| 74 | { | ||
| 75 | handshake_error_test_impl(U("wss://expired.badssl.com/")); | ||
| 76 | } | ||
| 77 | - | ||
| 78 | +*/ | ||
| 79 | #endif | ||
| 80 | |||
| 81 | } // SUITE(authentication_tests) | ||
| 82 | Index: casablanca/Release/tests/functional/websockets/client/client_construction.cpp | ||
| 83 | =================================================================== | ||
| 84 | --- casablanca.orig/Release/tests/functional/websockets/client/client_construction.cpp | ||
| 85 | +++ casablanca/Release/tests/functional/websockets/client/client_construction.cpp | ||
| 86 | @@ -81,7 +81,7 @@ | ||
| 87 | VERIFY_ARE_EQUAL(config2.credentials().username(), cred.username()); | ||
| 88 | } | ||
| 89 | |||
| 90 | - | ||
| 91 | +/* | ||
| 92 | // Verify that we can get the baseuri from websocket_client connect. | ||
| 93 | TEST_FIXTURE(uri_address, uri_test) | ||
| 94 | { | ||
| 95 | @@ -101,7 +101,7 @@ | ||
| 96 | VERIFY_ARE_EQUAL(client2.uri(), m_uri); | ||
| 97 | client2.close().wait(); | ||
| 98 | } | ||
| 99 | - | ||
| 100 | +*/ | ||
| 101 | TEST_FIXTURE(uri_address, move_operations) | ||
| 102 | { | ||
| 103 | std::string body("hello"); | ||
diff --git a/meta-oe/recipes-support/cpprest/cpprest-2.10.2/fix-cmake-install.patch b/meta-oe/recipes-support/cpprest/cpprest-2.10.2/fix-cmake-install.patch index 0feafef5bf..ab92276804 100644 --- a/meta-oe/recipes-support/cpprest/cpprest-2.10.2/fix-cmake-install.patch +++ b/meta-oe/recipes-support/cpprest/cpprest-2.10.2/fix-cmake-install.patch | |||
| @@ -4,14 +4,56 @@ Upstream-Status: https://github.com/Microsoft/cpprestsdk/pull/737 | |||
| 4 | Forwarded: https://github.com/Microsoft/cpprestsdk/pull/737 | 4 | Forwarded: https://github.com/Microsoft/cpprestsdk/pull/737 |
| 5 | Last-Update: 2018-04-19 | 5 | Last-Update: 2018-04-19 |
| 6 | 6 | ||
| 7 | --- cpprest-2.10.2.orig/CMakeLists.txt | 7 | Index: cpprest/Release/CMakeLists.txt |
| 8 | +++ cpprest-2.10.2/CMakeLists.txt | 8 | =================================================================== |
| 9 | @@ -18,7 +18,7 @@ enable_testing() | 9 | --- cpprest.orig/Release/CMakeLists.txt |
| 10 | +++ cpprest/Release/CMakeLists.txt | ||
| 11 | @@ -18,7 +18,6 @@ | ||
| 10 | set(WERROR ON CACHE BOOL "Treat Warnings as Errors.") | 12 | set(WERROR ON CACHE BOOL "Treat Warnings as Errors.") |
| 11 | set(CPPREST_EXCLUDE_WEBSOCKETS OFF CACHE BOOL "Exclude websockets functionality.") | 13 | set(CPPREST_EXCLUDE_WEBSOCKETS OFF CACHE BOOL "Exclude websockets functionality.") |
| 12 | set(CPPREST_EXCLUDE_COMPRESSION OFF CACHE BOOL "Exclude compression functionality.") | 14 | set(CPPREST_EXCLUDE_COMPRESSION OFF CACHE BOOL "Exclude compression functionality.") |
| 13 | -set(CPPREST_EXPORT_DIR lib/cpprestsdk CACHE STRING "Directory to install CMake config files.") | 15 | -set(CPPREST_EXPORT_DIR lib/cpprestsdk CACHE STRING "Directory to install CMake config files.") |
| 14 | +set(CPPREST_EXPORT_DIR lib/cmake/cpprestsdk CACHE STRING "Directory to install CMake config files.") | ||
| 15 | set(CPPREST_INSTALL_HEADERS ON CACHE BOOL "Install header files.") | 16 | set(CPPREST_INSTALL_HEADERS ON CACHE BOOL "Install header files.") |
| 16 | set(CPPREST_INSTALL ON CACHE BOOL "Add install commands.") | 17 | set(CPPREST_INSTALL ON CACHE BOOL "Add install commands.") |
| 17 | 18 | ||
| 19 | @@ -63,6 +62,9 @@ | ||
| 20 | include(cmake/cpprest_find_openssl.cmake) | ||
| 21 | include(cmake/cpprest_find_websocketpp.cmake) | ||
| 22 | include(CheckIncludeFiles) | ||
| 23 | +if(UNIX) | ||
| 24 | +include(GNUInstallDirs) | ||
| 25 | +endif(UNIX) | ||
| 26 | |||
| 27 | find_package(Threads REQUIRED) | ||
| 28 | if(THREADS_HAVE_PTHREAD_ARG) | ||
| 29 | Index: cpprest/Release/src/CMakeLists.txt | ||
| 30 | =================================================================== | ||
| 31 | --- cpprest.orig/Release/src/CMakeLists.txt | ||
| 32 | +++ cpprest/Release/src/CMakeLists.txt | ||
| 33 | @@ -250,21 +250,21 @@ | ||
| 34 | install( | ||
| 35 | TARGETS ${CPPREST_TARGETS} | ||
| 36 | EXPORT cpprestsdk-targets | ||
| 37 | - RUNTIME DESTINATION bin | ||
| 38 | - LIBRARY DESTINATION lib | ||
| 39 | - ARCHIVE DESTINATION lib | ||
| 40 | + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} | ||
| 41 | + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} | ||
| 42 | + ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} | ||
| 43 | ) | ||
| 44 | |||
| 45 | configure_file(../cmake/cpprestsdk-config.in.cmake "${CMAKE_CURRENT_BINARY_DIR}/cpprestsdk-config.cmake" @ONLY) | ||
| 46 | |||
| 47 | install( | ||
| 48 | FILES "${CMAKE_CURRENT_BINARY_DIR}/cpprestsdk-config.cmake" | ||
| 49 | - DESTINATION ${CPPREST_EXPORT_DIR} | ||
| 50 | + DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake | ||
| 51 | ) | ||
| 52 | install( | ||
| 53 | EXPORT cpprestsdk-targets | ||
| 54 | FILE cpprestsdk-targets.cmake | ||
| 55 | NAMESPACE cpprestsdk:: | ||
| 56 | - DESTINATION ${CPPREST_EXPORT_DIR} | ||
| 57 | + DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake | ||
| 58 | ) | ||
| 59 | endif() | ||
diff --git a/meta-oe/recipes-support/cpprest/cpprest_2.10.2.bb b/meta-oe/recipes-support/cpprest/cpprest_2.10.2.bb index fea5d4b2eb..47183c5766 100644 --- a/meta-oe/recipes-support/cpprest/cpprest_2.10.2.bb +++ b/meta-oe/recipes-support/cpprest/cpprest_2.10.2.bb | |||
| @@ -6,10 +6,13 @@ LIC_FILES_CHKSUM = "file://${S}/../license.txt;md5=a2e15b954769218ff912468eecd6a | |||
| 6 | DEPENDS = "openssl websocketpp zlib boost" | 6 | DEPENDS = "openssl websocketpp zlib boost" |
| 7 | 7 | ||
| 8 | SRC_URI = "git://github.com/Microsoft/cpprestsdk.git;protocol=https;branch=master \ | 8 | SRC_URI = "git://github.com/Microsoft/cpprestsdk.git;protocol=https;branch=master \ |
| 9 | file://fix-cmake-install.patch \ | 9 | file://disable-outside-tests.patch;patchdir=.. \ |
| 10 | file://0001-Fix-a-build-problem-on-Clang.patch;patchdir=.. \ | 10 | file://disable-test-timeouts.patch;patchdir=.. \ |
| 11 | file://0002-Define-virtual-destructor.patch;patchdir=.. \ | 11 | file://disable-float-tests.patch;patchdir=.. \ |
| 12 | file://0001-disable-more-Werror-warnings.patch;patchdir=.. \ | 12 | file://fix-cmake-install.patch;patchdir=.. \ |
| 13 | file://747.patch;patchdir=.. \ | ||
| 14 | file://732.patch;patchdir=.. \ | ||
| 15 | file://787.patch;patchdir=.. \ | ||
| 13 | " | 16 | " |
| 14 | 17 | ||
| 15 | # tag 2.10.2 | 18 | # tag 2.10.2 |
