Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[grpc] Update to 1.29.1 #11791

Merged
merged 6 commits into from
Jun 23, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 7 additions & 7 deletions ports/grpc/00001-fix-uwp.patch
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 3f9d19e..25d96ab 100644
index 8561c67..84de29f 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -144,6 +144,9 @@ if(UNIX)
@@ -150,6 +150,9 @@ if(UNIX)
endif()
if(WIN32)
set(_gRPC_PLATFORM_WINDOWS ON)
Expand All @@ -11,8 +11,8 @@ index 3f9d19e..25d96ab 100644
+ endif()
endif()

set(CMAKE_POSITION_INDEPENDENT_CODE TRUE)
@@ -160,6 +163,9 @@ if(MSVC)
# Use C99 standard
@@ -174,6 +177,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")
Expand All @@ -22,7 +22,7 @@ index 3f9d19e..25d96ab 100644
endif()
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${_gRPC_C_CXX_FLAGS}")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${_gRPC_C_CXX_FLAGS}")
@@ -228,6 +234,10 @@ file(MAKE_DIRECTORY ${_gRPC_PROTO_GENS_DIR})
@@ -237,6 +243,10 @@ file(MAKE_DIRECTORY ${_gRPC_PROTO_GENS_DIR})
# ``.proto`` files
#
function(protobuf_generate_grpc_cpp)
Expand All @@ -33,15 +33,15 @@ index 3f9d19e..25d96ab 100644
if(NOT ARGN)
message(SEND_ERROR "Error: PROTOBUF_GENERATE_GRPC_CPP() called without any proto files")
return()
@@ -300,6 +310,7 @@ if (gRPC_BUILD_GRPC_RUBY_PLUGIN)
@@ -309,6 +319,7 @@ if (gRPC_BUILD_GRPC_RUBY_PLUGIN)
list(APPEND _gRPC_PLUGIN_LIST grpc_ruby_plugin)
endif ()

+if(NOT _gRPC_PLATFORM_UWP)
add_custom_target(plugins
DEPENDS ${_gRPC_PLUGIN_LIST}
)
@@ -321,6 +332,7 @@ add_custom_target(tools_cxx
@@ -327,6 +338,7 @@ add_custom_target(tools_cxx

add_custom_target(tools
DEPENDS tools_c tools_cxx)
Expand Down
12 changes: 6 additions & 6 deletions ports/grpc/00002-static-linking-in-linux.patch
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 25d96ab..c4057b3 100644
index 84de29f..0c6dc0e 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")
@@ -165,6 +165,11 @@ set(CMAKE_CXX_EXTENSIONS OFF)

set(CMAKE_POSITION_INDEPENDENT_CODE TRUE)
list(APPEND 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)
13 changes: 13 additions & 0 deletions ports/grpc/00005-fix-uwp-error.patch
Original file line number Diff line number Diff line change
Expand Up @@ -10,3 +10,16 @@ index c0e2164..331e54c 100644
if (len <= sizeof(slice.data.inlined.bytes)) {
slice.refcount = nullptr;
slice.data.inlined.length = len;
diff --git a/src/core/lib/surface/server.cc b/src/core/lib/surface/server.cc
index 998eb6d..a6e26d3 100644
--- a/src/core/lib/surface/server.cc
+++ b/src/core/lib/surface/server.cc
@@ -1095,7 +1095,7 @@ grpc_call_error queue_call_request(grpc_server* server, size_t cq_idx,
GRPC_ERROR_CREATE_FROM_STATIC_STRING("Server Shutdown"));
return GRPC_CALL_OK;
}
- RequestMatcherInterface* rm;
+ RequestMatcherInterface* rm = nullptr;
switch (rc->type) {
case BATCH_CALL:
rm = server->unregistered_request_matcher;
147 changes: 75 additions & 72 deletions ports/grpc/00009-use-system-upb.patch
Original file line number Diff line number Diff line change
@@ -1,136 +1,139 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index a6a0f23..1c170da 100644
index 5ec669e..f71a212 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1281,7 +1281,7 @@ target_link_libraries(alts_test_util
@@ -81,6 +81,9 @@ set_property(CACHE gRPC_SSL_PROVIDER PROPERTY STRINGS "module" "package")
set(gRPC_PROTOBUF_PROVIDER "module" CACHE STRING "Provider of protobuf library")
set_property(CACHE gRPC_PROTOBUF_PROVIDER PROPERTY STRINGS "module" "package")

+set(gRPC_UPB_PROVIDER "module" CACHE STRING "Provider of upb library")
+set_property(CACHE gRPC_UPB_PROVIDER PROPERTY STRINGS "module" "package")
+
set(gRPC_PROTOBUF_PACKAGE_TYPE "" CACHE STRING "Algorithm for searching protobuf package")
set_property(CACHE gRPC_PROTOBUF_PACKAGE_TYPE PROPERTY STRINGS "CONFIG" "MODULE")

@@ -1765,7 +1768,6 @@ target_link_libraries(grpc
${_gRPC_ALLTARGETS_LIBRARIES}
gpr
address_sorting
- upb
absl::optional
absl::strings
absl::inlined_vector
@@ -1844,7 +1846,6 @@ target_link_libraries(grpc_csharp_ext
grpc
gpr
address_sorting
- upb
+ ${_gRPC_UPB_LIBRARIES}
)

foreach(_hdr
@@ -1917,7 +1917,7 @@ target_link_libraries(grpc
${_gRPC_UPB_LIBRARIES}

@@ -2351,7 +2352,6 @@ target_link_libraries(grpc_unsecure
${_gRPC_ALLTARGETS_LIBRARIES}
gpr
address_sorting
- 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}
absl::optional
absl::strings
absl::inlined_vector
@@ -2545,7 +2545,6 @@ target_link_libraries(grpc++
grpc
gpr
address_sorting
- 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

foreach(_hdr
@@ -2821,7 +2820,6 @@ target_link_libraries(grpc++_alts
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
address_sorting
- 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}

foreach(_hdr
@@ -2889,7 +2887,6 @@ target_link_libraries(grpc++_error_details
grpc
gpr
address_sorting
- 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}

foreach(_hdr
@@ -2962,7 +2959,6 @@ target_link_libraries(grpc++_reflection
grpc
gpr
address_sorting
- upb
+ ${_gRPC_UPB_LIBRARIES}
)

foreach(_hdr
@@ -4070,7 +4070,7 @@ target_link_libraries(grpc++_alts
${_gRPC_ALLTARGETS_LIBRARIES}
grpc++
@@ -3239,7 +3235,6 @@ target_link_libraries(grpc++_unsecure
grpc_unsecure
gpr
address_sorting
- upb
+ ${_gRPC_UPB_LIBRARIES}
)

foreach(_hdr
@@ -4876,7 +4876,7 @@ target_link_libraries(grpc++_unsecure
${_gRPC_ALLTARGETS_LIBRARIES}
@@ -3586,7 +3581,6 @@ target_link_libraries(grpcpp_channelz
grpc
gpr
grpc_unsecure
address_sorting
- upb
+ ${_gRPC_UPB_LIBRARIES}
)

foreach(_hdr
@@ -5898,7 +5898,7 @@ target_link_libraries(grpc_csharp_ext

@@ -3613,6 +3607,7 @@ endif()

endif()
-
+if(0)
+if (gRPC_UPB_PROVIDER STREQUAL "module")
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}
)
@@ -3662,7 +3657,7 @@ if(gRPC_INSTALL)
ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR}
)
endif()
-
+endif()


-
-if(gRPC_INSTALL)
+if(gRPC_INSTALL AND 0)
install(TARGETS upb EXPORT gRPCTargets
RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
add_executable(check_epollexclusive
diff --git a/cmake/gRPCConfig.cmake.in b/cmake/gRPCConfig.cmake.in
index 5bfa73c..8a867df 100644
index 5bfa73c..db0865e 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)
+@_gRPC_FIND_UPB@

# Targets
include(${CMAKE_CURRENT_LIST_DIR}/gRPCTargets.cmake)
diff --git a/cmake/upb.cmake b/cmake/upb.cmake
index 2c0ab84..746e067 100644
index 2c0ab84..07dd613 100644
--- a/cmake/upb.cmake
+++ b/cmake/upb.cmake
@@ -12,9 +12,9 @@
@@ -12,9 +12,18 @@
# 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_GRPC_GENERATED_DIR "${CMAKE_CURRENT_SOURCE_DIR}/src/core/ext/upb-generated")
+if (gRPC_UPB_PROVIDER STREQUAL "module")
set(UPB_ROOT_DIR ${CMAKE_CURRENT_SOURCE_DIR}/third_party/upb)

-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_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)
set(_gRPC_UPB_LIBRARIES upb)
+
+elseif(gRPC_UPB_PROVIDER STREQUAL "package")
+ find_package(upb CONFIG REQUIRED)
+ set(_gRPC_UPB_LIBRARIES upb::upb)
+ set(_gRPC_UPB_INCLUDE_DIR)
+ set(upb ${_gRPC_UPB_LIBRARIES})
+ set(_gRPC_FIND_UPB "if(NOT upb_FOUND)\n find_package(upb CONFIG REQUIRED)\nendif()")
+endif()
35 changes: 22 additions & 13 deletions ports/grpc/00010-add-feature-absl-sync.patch
Original file line number Diff line number Diff line change
@@ -1,3 +1,25 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index f71a212..77cf3de 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1771,6 +1771,8 @@ target_link_libraries(grpc
absl::optional
absl::strings
absl::inlined_vector
+ absl::time
+ absl::synchronization
)
if(_gRPC_PLATFORM_IOS OR _gRPC_PLATFORM_MAC)
target_link_libraries(grpc "-framework CoreFoundation")
@@ -2355,6 +2357,8 @@ target_link_libraries(grpc_unsecure
absl::optional
absl::strings
absl::inlined_vector
+ absl::time
+ absl::synchronization
)
if(_gRPC_PLATFORM_IOS OR _gRPC_PLATFORM_MAC)
target_link_libraries(grpc_unsecure "-framework CoreFoundation")
diff --git a/cmake/abseil-cpp.cmake b/cmake/abseil-cpp.cmake
index 078d495..b6f50bd 100644
--- a/cmake/abseil-cpp.cmake
Expand All @@ -10,16 +32,3 @@ index 078d495..b6f50bd 100644
+ add_definitions(-DGPR_ABSEIL_SYNC=1)
+ endif()
endif()
diff --git a/CMakeLists.txt b/CMakeLists.txt
index df1703c..7667662 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1464,6 +1464,8 @@ target_link_libraries(gpr
absl::str_format
absl::strings
absl::optional
+ absl::time
+ absl::synchronization
)
if(_gRPC_PLATFORM_ANDROID)
target_link_libraries(gpr
2 changes: 1 addition & 1 deletion ports/grpc/CONTROL
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
Source: grpc
Version: 1.28.1-1
Version: 1.29.1
Build-Depends: zlib, openssl, protobuf, c-ares (!uwp), upb, abseil
Homepage: https://github.com/grpc/grpc
Description: An RPC library and framework
Expand Down
5 changes: 3 additions & 2 deletions ports/grpc/portfile.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ endif()
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO grpc/grpc
REF cb81fe0dfaa424eb50de26fb7c904a27a78c3f76 #v1.28.1
SHA512 ff33c1afe413475846f53fd6b6921323019a6da2218fe4827e43e390e04ea073d8e56b0a9b32015233106a6d90a83eff0fa631df37a96036a9c810a4dc32ea4f
REF 7d89dbb311f049b43bda7bbf6f7d7bf1b4c24419 #v1.29.1
SHA512 403fa5e3f012786bb17ca32c760b6dfb22c5a5cfb473ba7fad657e26ab3986eb0203f7cbb501a8647fd5ef2571e5f4ee08c2c97d1dfda18ec5ab6a92c9fc3263
HEAD_REF master
PATCHES
00001-fix-uwp.patch
Expand Down Expand Up @@ -50,6 +50,7 @@ vcpkg_configure_cmake(
-DgRPC_SSL_PROVIDER=package
-DgRPC_PROTOBUF_PROVIDER=package
-DgRPC_ABSL_PROVIDER=package
-DgRPC_UPB_PROVIDER=package
-DgRPC_PROTOBUF_PACKAGE_TYPE=CONFIG
-DgRPC_CARES_PROVIDER=${cares_CARES_PROVIDER}
-DgRPC_GFLAGS_PROVIDER=none
Expand Down
2 changes: 1 addition & 1 deletion ports/offscale-libetcd-cpp/CONTROL
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
Source: offscale-libetcd-cpp
Version: 2019-07-10
Version: 2019-07-10-1
Homepage: https://github.com/offscale/libetcd-cpp
Description: A C++ client library for etcd. etcd is a distributed, reliable key-value store.
Build-Depends: grpc, protobuf
13 changes: 13 additions & 0 deletions ports/offscale-libetcd-cpp/fix-dependency-grpc.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 0d9aad9..d68c5f7 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -70,7 +70,7 @@ endif()
target_include_directories(etcdcpp PRIVATE "generated/")
target_include_directories(etcdcpp INTERFACE "${CMAKE_INSTALL_PREFIX}/include")

-target_link_libraries(etcdcpp PRIVATE gRPC::gpr gRPC::grpc gRPC::grpc++ gRPC::grpc_cronet)
+target_link_libraries(etcdcpp PRIVATE gRPC::gpr gRPC::grpc gRPC::grpc++ gRPC::grpc++_alts)
target_link_libraries(etcdcpp PRIVATE protobuf::libprotoc protobuf::libprotobuf)

install(TARGETS etcdcpp EXPORT etcdcpp DESTINATION lib)
Loading