From acdbfaec173b4c2ab78dd592b6baf35cc3305839 Mon Sep 17 00:00:00 2001 From: ymshenyu <39402395+ymshenyu@users.noreply.github.com> Date: Wed, 12 Feb 2020 08:33:48 +0800 Subject: [gRPC] Update to 1.27.1 (#9963) * gRPC 1.27.0 * trigger build * update to v1.27.1 * update control file --- ports/grpc/00001-fix-uwp.patch | 12 +- ports/grpc/00002-static-linking-in-linux.patch | 32 ++-- ports/grpc/00003-undef-base64-macro.patch | 26 +-- ports/grpc/00004-link-gdi32-on-windows.patch | 8 +- ports/grpc/00005-fix-uwp-error.patch | 24 +-- ports/grpc/00006-crypt32.patch | 13 -- ports/grpc/00009-use-system-upb.patch | 254 +++++++++++++------------ ports/grpc/CONTROL | 4 +- ports/grpc/portfile.cmake | 6 +- 9 files changed, 192 insertions(+), 187 deletions(-) delete mode 100644 ports/grpc/00006-crypt32.patch diff --git a/ports/grpc/00001-fix-uwp.patch b/ports/grpc/00001-fix-uwp.patch index 08308f4ac..79025276b 100644 --- a/ports/grpc/00001-fix-uwp.patch +++ b/ports/grpc/00001-fix-uwp.patch @@ -1,8 +1,8 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt -index 3d4418a..a2f23d5 100644 +index 3f9d19e..25d96ab 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -104,6 +104,9 @@ if(UNIX) +@@ -144,6 +144,9 @@ if(UNIX) endif() if(WIN32) set(_gRPC_PLATFORM_WINDOWS ON) @@ -12,7 +12,7 @@ index 3d4418a..a2f23d5 100644 endif() set(CMAKE_POSITION_INDEPENDENT_CODE TRUE) -@@ -119,6 +122,9 @@ if(MSVC) +@@ -160,6 +163,9 @@ if(MSVC) set(_gRPC_C_CXX_FLAGS "${_gRPC_C_CXX_FLAGS} /wd4267") # TODO(jtattermusch): needed to build boringssl with VS2017, revisit later set(_gRPC_C_CXX_FLAGS "${_gRPC_C_CXX_FLAGS} /wd4987 /wd4774 /wd4819 /wd4996 /wd4619") @@ -22,7 +22,7 @@ index 3d4418a..a2f23d5 100644 endif() set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${_gRPC_C_CXX_FLAGS}") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${_gRPC_C_CXX_FLAGS}") -@@ -186,6 +192,10 @@ file(MAKE_DIRECTORY ${_gRPC_PROTO_GENS_DIR}) +@@ -228,6 +234,10 @@ file(MAKE_DIRECTORY ${_gRPC_PROTO_GENS_DIR}) # ``.proto`` files # function(protobuf_generate_grpc_cpp) @@ -33,7 +33,7 @@ index 3d4418a..a2f23d5 100644 if(NOT ARGN) message(SEND_ERROR "Error: PROTOBUF_GENERATE_GRPC_CPP() called without any proto files") return() -@@ -258,6 +268,7 @@ if (gRPC_BUILD_GRPC_RUBY_PLUGIN) +@@ -300,6 +310,7 @@ if (gRPC_BUILD_GRPC_RUBY_PLUGIN) list(APPEND _gRPC_PLUGIN_LIST grpc_ruby_plugin) endif () @@ -41,7 +41,7 @@ index 3d4418a..a2f23d5 100644 add_custom_target(plugins DEPENDS ${_gRPC_PLUGIN_LIST} ) -@@ -279,6 +290,7 @@ add_custom_target(tools_cxx +@@ -321,6 +332,7 @@ add_custom_target(tools_cxx add_custom_target(tools DEPENDS tools_c tools_cxx) diff --git a/ports/grpc/00002-static-linking-in-linux.patch b/ports/grpc/00002-static-linking-in-linux.patch index 7946f21a3..d496e54c4 100644 --- a/ports/grpc/00002-static-linking-in-linux.patch +++ b/ports/grpc/00002-static-linking-in-linux.patch @@ -1,16 +1,16 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index a2f23d5..e433e8d 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -111,6 +111,11 @@ endif() - - set(CMAKE_POSITION_INDEPENDENT_CODE TRUE) - -+if (gRPC_STATIC_LINKING AND NOT _gRPC_PLATFORM_WINDOWS) -+ # Force to static link -+ set(CMAKE_EXE_LINKER_FLAGS "-Bstatic") -+endif() -+ - if(MSVC) - include(cmake/msvc_static_runtime.cmake) - add_definitions(-D_WIN32_WINNT=0x600 -D_SCL_SECURE_NO_WARNINGS -D_CRT_SECURE_NO_WARNINGS -D_WINSOCK_DEPRECATED_NO_WARNINGS) +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 25d96ab..c4057b3 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -152,6 +152,11 @@ endif() + set(CMAKE_POSITION_INDEPENDENT_CODE TRUE) + set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules") + ++if (gRPC_STATIC_LINKING AND NOT _gRPC_PLATFORM_WINDOWS) ++ # Force to static link ++ set(CMAKE_EXE_LINKER_FLAGS "-Bstatic") ++endif() ++ + if(MSVC) + include(cmake/msvc_static_runtime.cmake) + add_definitions(-D_WIN32_WINNT=0x600 -D_SCL_SECURE_NO_WARNINGS -D_CRT_SECURE_NO_WARNINGS -D_WINSOCK_DEPRECATED_NO_WARNINGS) diff --git a/ports/grpc/00003-undef-base64-macro.patch b/ports/grpc/00003-undef-base64-macro.patch index b7e74014b..b4beb932f 100644 --- a/ports/grpc/00003-undef-base64-macro.patch +++ b/ports/grpc/00003-undef-base64-macro.patch @@ -1,13 +1,13 @@ -diff --git a/src/core/lib/transport/transport.cc b/src/core/lib/transport/transport.cc -index 6adcd8d..20745df 100644 ---- a/src/core/lib/transport/transport.cc -+++ b/src/core/lib/transport/transport.cc -@@ -97,6 +97,8 @@ void grpc_stream_ref_init(grpc_stream_refcount* refcount, int /*initial_refs*/, - refcount, &refcount->slice_refcount); - } - -+#undef move64 -+ - static void move64(uint64_t* from, uint64_t* to) { - *to += *from; - *from = 0; +diff --git a/src/core/lib/transport/transport.cc b/src/core/lib/transport/transport.cc +index 6adcd8d..20745df 100644 +--- a/src/core/lib/transport/transport.cc ++++ b/src/core/lib/transport/transport.cc +@@ -97,6 +97,8 @@ void grpc_stream_ref_init(grpc_stream_refcount* refcount, int /*initial_refs*/, + refcount, &refcount->slice_refcount); + } + ++#undef move64 ++ + static void move64(uint64_t* from, uint64_t* to) { + *to += *from; + *from = 0; diff --git a/ports/grpc/00004-link-gdi32-on-windows.patch b/ports/grpc/00004-link-gdi32-on-windows.patch index c644e9b6d..2a6fcea31 100644 --- a/ports/grpc/00004-link-gdi32-on-windows.patch +++ b/ports/grpc/00004-link-gdi32-on-windows.patch @@ -1,13 +1,13 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt -index f6c4a340fc..22054eedd0 100644 +index c4057b3..a6a0f23 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -164,7 +164,7 @@ elseif(UNIX) +@@ -220,7 +220,7 @@ elseif(UNIX) endif() if(WIN32 AND MSVC) -- set(_gRPC_BASELIB_LIBRARIES wsock32 ws2_32) -+ set(_gRPC_BASELIB_LIBRARIES wsock32 ws2_32 gdi32) +- set(_gRPC_BASELIB_LIBRARIES wsock32 ws2_32 crypt32) ++ set(_gRPC_BASELIB_LIBRARIES wsock32 ws2_32 crypt32 gdi32) endif() # Create directory for generated .proto files diff --git a/ports/grpc/00005-fix-uwp-error.patch b/ports/grpc/00005-fix-uwp-error.patch index 8fe3e3d9b..37748b09f 100644 --- a/ports/grpc/00005-fix-uwp-error.patch +++ b/ports/grpc/00005-fix-uwp-error.patch @@ -1,12 +1,12 @@ -diff --git a/src/core/lib/slice/slice.cc b/src/core/lib/slice/slice.cc -index c0e2164..331e54c 100644 ---- a/src/core/lib/slice/slice.cc -+++ b/src/core/lib/slice/slice.cc -@@ -214,6 +214,7 @@ grpc_slice grpc_slice_from_moved_buffer(grpc_core::UniquePtr p, - size_t len) { - uint8_t* ptr = reinterpret_cast(p.get()); - grpc_slice slice; -+ memset(&slice, 0, sizeof(grpc_slice)); - if (len <= sizeof(slice.data.inlined.bytes)) { - slice.refcount = nullptr; - slice.data.inlined.length = len; +diff --git a/src/core/lib/slice/slice.cc b/src/core/lib/slice/slice.cc +index c0e2164..331e54c 100644 +--- a/src/core/lib/slice/slice.cc ++++ b/src/core/lib/slice/slice.cc +@@ -214,6 +214,7 @@ grpc_slice grpc_slice_from_moved_buffer(grpc_core::UniquePtr p, + size_t len) { + uint8_t* ptr = reinterpret_cast(p.get()); + grpc_slice slice; ++ memset(&slice, 0, sizeof(grpc_slice)); + if (len <= sizeof(slice.data.inlined.bytes)) { + slice.refcount = nullptr; + slice.data.inlined.length = len; diff --git a/ports/grpc/00006-crypt32.patch b/ports/grpc/00006-crypt32.patch deleted file mode 100644 index 44bcaaf99..000000000 --- a/ports/grpc/00006-crypt32.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 22054eedd0..a7fdb1fcd5 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -164,7 +164,7 @@ elseif(UNIX) - endif() - - if(WIN32 AND MSVC) -- set(_gRPC_BASELIB_LIBRARIES wsock32 ws2_32 gdi32) -+ set(_gRPC_BASELIB_LIBRARIES wsock32 ws2_32 gdi32 crypt32) - endif() - - # Create directory for generated .proto files diff --git a/ports/grpc/00009-use-system-upb.patch b/ports/grpc/00009-use-system-upb.patch index 515238b9a..41a2d9ab6 100644 --- a/ports/grpc/00009-use-system-upb.patch +++ b/ports/grpc/00009-use-system-upb.patch @@ -1,118 +1,136 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index b535f10..0fcb682 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -1530,7 +1530,7 @@ target_link_libraries(grpc - ${_gRPC_UPB_LIBRARIES} - ${_gRPC_ALLTARGETS_LIBRARIES} - gpr -- upb -+ ${_gRPC_UPB_LIBRARIES} - ) - if(_gRPC_PLATFORM_IOS OR _gRPC_PLATFORM_MAC) - target_link_libraries(grpc "-framework CoreFoundation") -@@ -1941,7 +1941,7 @@ target_link_libraries(grpc_cronet - ${_gRPC_UPB_LIBRARIES} - ${_gRPC_ALLTARGETS_LIBRARIES} - gpr -- upb -+ ${_gRPC_UPB_LIBRARIES} - ) - if(_gRPC_PLATFORM_IOS OR _gRPC_PLATFORM_MAC) - target_link_libraries(grpc_cronet "-framework CoreFoundation") -@@ -2283,7 +2283,7 @@ target_link_libraries(grpc_test_util - ${_gRPC_ALLTARGETS_LIBRARIES} - gpr - grpc -- upb -+ ${_gRPC_UPB_LIBRARIES} - ) - if(_gRPC_PLATFORM_IOS OR _gRPC_PLATFORM_MAC) - target_link_libraries(grpc_test_util "-framework CoreFoundation") -@@ -2626,7 +2626,7 @@ target_link_libraries(grpc_test_util_unsecure - ${_gRPC_ALLTARGETS_LIBRARIES} - gpr - grpc_unsecure -- upb -+ ${_gRPC_UPB_LIBRARIES} - ) - if(_gRPC_PLATFORM_IOS OR _gRPC_PLATFORM_MAC) - target_link_libraries(grpc_test_util_unsecure "-framework CoreFoundation") -@@ -3017,7 +3017,7 @@ target_link_libraries(grpc_unsecure - ${_gRPC_UPB_LIBRARIES} - ${_gRPC_ALLTARGETS_LIBRARIES} - gpr -- upb -+ ${_gRPC_UPB_LIBRARIES} - ) - if(_gRPC_PLATFORM_IOS OR _gRPC_PLATFORM_MAC) - target_link_libraries(grpc_unsecure "-framework CoreFoundation") -@@ -3553,7 +3553,7 @@ target_link_libraries(grpc++ - ${_gRPC_ALLTARGETS_LIBRARIES} - grpc - gpr -- upb -+ ${_gRPC_UPB_LIBRARIES} - ) - - foreach(_hdr -@@ -4817,7 +4817,7 @@ target_link_libraries(grpc++_unsecure - ${_gRPC_ALLTARGETS_LIBRARIES} - gpr - grpc_unsecure -- upb -+ ${_gRPC_UPB_LIBRARIES} - ) - - foreach(_hdr -@@ -5848,7 +5848,7 @@ if(gRPC_INSTALL) - endif() - - endif() -- -+if(0) - add_library(upb - third_party/upb/upb/decode.c - third_party/upb/upb/encode.c -@@ -5888,10 +5888,10 @@ target_include_directories(upb - target_link_libraries(upb - ${_gRPC_ALLTARGETS_LIBRARIES} - ) -+endif() - - -- --if(gRPC_INSTALL) -+if(gRPC_INSTALL AND 0) - install(TARGETS upb EXPORT gRPCTargets - RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR} - LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR} -diff --git a/cmake/gRPCConfig.cmake.in b/cmake/gRPCConfig.cmake.in -index 504d5a7..e2a3122 100644 ---- a/cmake/gRPCConfig.cmake.in -+++ b/cmake/gRPCConfig.cmake.in -@@ -3,6 +3,7 @@ - @_gRPC_FIND_PROTOBUF@ - @_gRPC_FIND_SSL@ - @_gRPC_FIND_CARES@ -+find_package(upb CONFIG) - - # Targets - include(${CMAKE_CURRENT_LIST_DIR}/gRPCTargets.cmake) -diff --git a/cmake/upb.cmake b/cmake/upb.cmake -index 2c0ab84..746e067 100644 ---- a/cmake/upb.cmake -+++ b/cmake/upb.cmake -@@ -12,9 +12,9 @@ - # See the License for the specific language governing permissions and - # limitations under the License. - --set(UPB_ROOT_DIR ${CMAKE_CURRENT_SOURCE_DIR}/third_party/upb) -+find_package(upb REQUIRED) -+set(_gRPC_UPB_INCLUDE_DIR) - --set(_gRPC_UPB_INCLUDE_DIR "${UPB_ROOT_DIR}") - set(_gRPC_UPB_GRPC_GENERATED_DIR "${CMAKE_CURRENT_SOURCE_DIR}/src/core/ext/upb-generated") - --set(_gRPC_UPB_LIBRARIES upb) -+set(_gRPC_UPB_LIBRARIES upb::upb) +diff --git a/CMakeLists.txt b/CMakeLists.txt +index a6a0f23..1c170da 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -1281,7 +1281,7 @@ target_link_libraries(alts_test_util + ${_gRPC_ALLTARGETS_LIBRARIES} + grpc + gpr +- upb ++ ${_gRPC_UPB_LIBRARIES} + ) + + foreach(_hdr +@@ -1917,7 +1917,7 @@ target_link_libraries(grpc + ${_gRPC_UPB_LIBRARIES} + ${_gRPC_ALLTARGETS_LIBRARIES} + gpr +- upb ++ ${_gRPC_UPB_LIBRARIES} + ) + if(_gRPC_PLATFORM_IOS OR _gRPC_PLATFORM_MAC) + target_link_libraries(grpc "-framework CoreFoundation") +@@ -2328,7 +2328,7 @@ target_link_libraries(grpc_cronet + ${_gRPC_UPB_LIBRARIES} + ${_gRPC_ALLTARGETS_LIBRARIES} + gpr +- upb ++ ${_gRPC_UPB_LIBRARIES} + ) + if(_gRPC_PLATFORM_IOS OR _gRPC_PLATFORM_MAC) + target_link_libraries(grpc_cronet "-framework CoreFoundation") +@@ -2670,7 +2670,7 @@ target_link_libraries(grpc_test_util + ${_gRPC_ALLTARGETS_LIBRARIES} + gpr + grpc +- upb ++ ${_gRPC_UPB_LIBRARIES} + ) + if(_gRPC_PLATFORM_IOS OR _gRPC_PLATFORM_MAC) + target_link_libraries(grpc_test_util "-framework CoreFoundation") +@@ -3013,7 +3013,7 @@ target_link_libraries(grpc_test_util_unsecure + ${_gRPC_ALLTARGETS_LIBRARIES} + gpr + grpc_unsecure +- upb ++ ${_gRPC_UPB_LIBRARIES} + ) + if(_gRPC_PLATFORM_IOS OR _gRPC_PLATFORM_MAC) + target_link_libraries(grpc_test_util_unsecure "-framework CoreFoundation") +@@ -3404,7 +3404,7 @@ target_link_libraries(grpc_unsecure + ${_gRPC_UPB_LIBRARIES} + ${_gRPC_ALLTARGETS_LIBRARIES} + gpr +- upb ++ ${_gRPC_UPB_LIBRARIES} + ) + if(_gRPC_PLATFORM_IOS OR _gRPC_PLATFORM_MAC) + target_link_libraries(grpc_unsecure "-framework CoreFoundation") +@@ -3743,7 +3743,7 @@ target_link_libraries(grpc++ + ${_gRPC_ALLTARGETS_LIBRARIES} + grpc + gpr +- upb ++ ${_gRPC_UPB_LIBRARIES} + ) + + foreach(_hdr +@@ -4070,7 +4070,7 @@ target_link_libraries(grpc++_alts + ${_gRPC_ALLTARGETS_LIBRARIES} + grpc++ + gpr +- upb ++ ${_gRPC_UPB_LIBRARIES} + ) + + foreach(_hdr +@@ -4876,7 +4876,7 @@ target_link_libraries(grpc++_unsecure + ${_gRPC_ALLTARGETS_LIBRARIES} + gpr + grpc_unsecure +- upb ++ ${_gRPC_UPB_LIBRARIES} + ) + + foreach(_hdr +@@ -5898,7 +5898,7 @@ target_link_libraries(grpc_csharp_ext + + + endif() +- ++if(0) + add_library(upb + third_party/upb/upb/decode.c + third_party/upb/upb/encode.c +@@ -5938,10 +5938,10 @@ target_include_directories(upb + target_link_libraries(upb + ${_gRPC_ALLTARGETS_LIBRARIES} + ) ++endif() + + +- +-if(gRPC_INSTALL) ++if(gRPC_INSTALL AND 0) + install(TARGETS upb EXPORT gRPCTargets + RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR} + LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR} +diff --git a/cmake/gRPCConfig.cmake.in b/cmake/gRPCConfig.cmake.in +index 5bfa73c..8a867df 100644 +--- a/cmake/gRPCConfig.cmake.in ++++ b/cmake/gRPCConfig.cmake.in +@@ -7,6 +7,7 @@ list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_LIST_DIR}/modules) + @_gRPC_FIND_SSL@ + @_gRPC_FIND_CARES@ + @_gRPC_FIND_ABSL@ ++find_package(upb CONFIG) + + # Targets + include(${CMAKE_CURRENT_LIST_DIR}/gRPCTargets.cmake) +diff --git a/cmake/upb.cmake b/cmake/upb.cmake +index 2c0ab84..746e067 100644 +--- a/cmake/upb.cmake ++++ b/cmake/upb.cmake +@@ -12,9 +12,9 @@ + # See the License for the specific language governing permissions and + # limitations under the License. + +-set(UPB_ROOT_DIR ${CMAKE_CURRENT_SOURCE_DIR}/third_party/upb) ++find_package(upb REQUIRED) ++set(_gRPC_UPB_INCLUDE_DIR) + +-set(_gRPC_UPB_INCLUDE_DIR "${UPB_ROOT_DIR}") + set(_gRPC_UPB_GRPC_GENERATED_DIR "${CMAKE_CURRENT_SOURCE_DIR}/src/core/ext/upb-generated") + +-set(_gRPC_UPB_LIBRARIES upb) ++set(_gRPC_UPB_LIBRARIES upb::upb) diff --git a/ports/grpc/CONTROL b/ports/grpc/CONTROL index 790e19e8d..96ead2c98 100644 --- a/ports/grpc/CONTROL +++ b/ports/grpc/CONTROL @@ -1,5 +1,5 @@ Source: grpc -Version: 1.26.0-1 -Build-Depends: zlib, openssl, protobuf, c-ares (!uwp), upb +Version: 1.27.1-1 +Build-Depends: zlib, openssl, protobuf, c-ares (!uwp), upb, abseil Homepage: https://github.com/grpc/grpc Description: An RPC library and framework diff --git a/ports/grpc/portfile.cmake b/ports/grpc/portfile.cmake index e156ea4d5..6c2199a53 100644 --- a/ports/grpc/portfile.cmake +++ b/ports/grpc/portfile.cmake @@ -5,8 +5,8 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO grpc/grpc - REF v1.26.0 - SHA512 4f7d067c582d0a9be7b7d4dd1e08acdbe6ff0686dfe92b5db5b7927f779410a4237acfd1c61d9f79eb2d00f86cf93cc7492fa372c1877e57c1aa23e9bb2648bb + REF v1.27.1 + SHA512 00a5e1e0f94e441b3406f821943d1775a7ab0580fd22d604ba29f56dc424ccc8f27c476077e39f24ddd7f1bada4eba9a38456fb4ac546e27ae239f43e431d988 HEAD_REF master PATCHES 00001-fix-uwp.patch @@ -14,7 +14,6 @@ vcpkg_from_github( 00003-undef-base64-macro.patch 00004-link-gdi32-on-windows.patch 00005-fix-uwp-error.patch - 00006-crypt32.patch 00009-use-system-upb.patch ) @@ -44,6 +43,7 @@ vcpkg_configure_cmake( -DgRPC_ZLIB_PROVIDER=package -DgRPC_SSL_PROVIDER=package -DgRPC_PROTOBUF_PROVIDER=package + -DgRPC_ABSL_PROVIDER=package -DgRPC_PROTOBUF_PACKAGE_TYPE=CONFIG -DgRPC_CARES_PROVIDER=${cares_CARES_PROVIDER} -DgRPC_GFLAGS_PROVIDER=none -- cgit v1.2.3