grpc: update to 1.49.1.

This commit is contained in:
Andrew J. Hesford 2022-10-06 10:08:35 -04:00
parent 8f3f8936dd
commit 3b96872e32
5 changed files with 18 additions and 201 deletions

View File

@ -3641,18 +3641,18 @@ liboblibs.so.0.1 oblibs-0.1.1.1_1
libaal-1.0.so.7 libaal-1.0.7_1
libaal-minimal.so.0 libaal-1.0.7_1
libcli.so.1.9 libcli-1.9.8.4_1
libaddress_sorting.so.18 libgrpc-1.39.0_6
libgpr.so.18 libgrpc-1.39.0_6
libgrpc++.so.1.39 libgrpc-1.39.0_6
libgrpc++_alts.so.1.39 libgrpc-1.39.0_6
libgrpc++_error_details.so.1.39 libgrpc-1.39.0_6
libgrpc++_reflection.so.1.39 libgrpc-1.39.0_6
libgrpc++_unsecure.so.1.39 libgrpc-1.39.0_6
libgrpc.so.18 libgrpc-1.39.0_6
libgrpc_plugin_support.so.1.39 libgrpc-1.39.0_6
libgrpc_unsecure.so.18 libgrpc-1.39.0_6
libgrpcpp_channelz.so.1.39 libgrpc-1.39.0_6
libupb.so.18 libgrpc-1.39.0_6
libaddress_sorting.so.27 libgrpc-1.49.1_1
libgpr.so.27 libgrpc-1.49.1_1
libgrpc_unsecure.so.27 libgrpc-1.49.1_1
libupb.so.27 libgrpc-1.49.1_1
libgrpc++.so.1.49 libgrpc-1.49.1_1
libgrpc++_alts.so.1.49 libgrpc-1.49.1_1
libgrpc++_error_details.so.1.49 libgrpc-1.49.1_1
libgrpc++_reflection.so.1.49 libgrpc-1.49.1_1
libgrpc++_unsecure.so.1.49 libgrpc-1.49.1_1
libgrpc.so.18 libgrpc-1.49 libgrpc-1.49.1_1
libgrpc_plugin_support.so.1.49 libgrpc-1.49.1_1
libgrpcpp_channelz.so.1.49 libgrpc-1.49.1_1
libircclient.so.1 libircclient-1.10_5
libFAudio.so.0 FAudio-19.05_1
libqaccessibilityclient-qt5.so.0 libqaccessibilityclient-0.4.0_1

View File

@ -1,58 +0,0 @@
--- grpc-1.39.1.orig/CMakeLists.txt
+++ grpc-1.39.1/CMakeLists.txt
@@ -15856,7 +15865,7 @@ generate_pkgconfig(
"gpr"
"gRPC platform support library"
"${gRPC_CORE_VERSION}"
- "absl_base absl_memory absl_optional absl_status absl_str_format absl_strings absl_synchronization absl_time"
+ ""
"-lgpr"
""
"gpr.pc")
@@ -15866,7 +15875,7 @@ generate_pkgconfig(
"gRPC"
"high performance general RPC framework"
"${gRPC_CORE_VERSION}"
- "gpr openssl absl_base absl_bind_front absl_flat_hash_map absl_inlined_vector absl_memory absl_optional absl_status absl_statusor absl_str_format absl_strings absl_synchronization absl_time"
+ "gpr openssl"
"-lgrpc -laddress_sorting -lre2 -lupb -lcares -lz"
""
"grpc.pc")
@@ -15876,7 +15885,7 @@ generate_pkgconfig(
"gRPC unsecure"
"high performance general RPC framework without SSL"
"${gRPC_CORE_VERSION}"
- "gpr absl_base absl_bind_front absl_flat_hash_map absl_inlined_vector absl_memory absl_optional absl_status absl_statusor absl_str_format absl_strings absl_synchronization absl_time"
+ "gpr"
"-lgrpc_unsecure"
""
"grpc_unsecure.pc")
@@ -15886,7 +15895,7 @@ generate_pkgconfig(
"gRPC++"
"C++ wrapper for gRPC"
"${gRPC_CPP_VERSION}"
- "grpc absl_base absl_bind_front absl_flat_hash_map absl_inlined_vector absl_memory absl_optional absl_status absl_statusor absl_str_format absl_strings absl_synchronization absl_time"
+ "grpc"
"-lgrpc++"
""
"grpc++.pc")
@@ -15896,7 +15905,7 @@ generate_pkgconfig(
"gRPC++ unsecure"
"C++ wrapper for gRPC without SSL"
"${gRPC_CPP_VERSION}"
- "grpc_unsecure absl_base absl_bind_front absl_flat_hash_map absl_inlined_vector absl_memory absl_optional absl_status absl_statusor absl_str_format absl_strings absl_synchronization absl_time"
+ "grpc_unsecure"
"-lgrpc++_unsecure"
""
"grpc++_unsecure.pc")
--- grpc-1.39.1.orig/cmake/pkg-config-template.pc.in
+++ grpc-1.39.1/cmake/pkg-config-template.pc.in
@@ -6,7 +6,7 @@ libdir=${exec_prefix}/lib
Name: @PC_NAME@
Description: @PC_DESCRIPTION@
Version: @PC_VERSION@
-Cflags: -I${includedir}
+Cflags: -I${includedir} -I${includedir}/grpc_absl
Requires: @PC_REQUIRES@
Libs: -L${libdir} @PC_LIB@
Libs.private: @PC_LIBS_PRIVATE@

View File

@ -1,63 +0,0 @@
An all-in-one patch that fixes several issues:
1) UnscaledCycleClock not fully implemented for ppc*-musl (disabled on musl)
2) powerpc stacktrace implementation only works on glibc (disabled on musl)
3) powerpc stacktrace implementation has ppc64 assumptions (fixed)
4) examine_stack.cpp makes glibc assumptions on powerpc (fixed)
--- a/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.cc
+++ b/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.cc
@@ -20,7 +20,7 @@
#include <intrin.h>
#endif
-#if defined(__powerpc__) || defined(__ppc__)
+#if (defined(__powerpc__) || defined(__ppc__)) && defined(__GLIBC__)
#ifdef __GLIBC__
#include <sys/platform/ppc.h>
#elif defined(__FreeBSD__)
@@ -59,7 +59,7 @@
return base_internal::NominalCPUFrequency();
}
-#elif defined(__powerpc__) || defined(__ppc__)
+#elif (defined(__powerpc__) || defined(__ppc__)) && defined(__GLIBC__)
int64_t UnscaledCycleClock::Now() {
#ifdef __GLIBC__
--- a/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.h
+++ b/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.h
@@ -46,7 +46,7 @@
// The following platforms have an implementation of a hardware counter.
#if defined(__i386__) || defined(__x86_64__) || defined(__aarch64__) || \
- defined(__powerpc__) || defined(__ppc__) || \
+ ((defined(__powerpc__) || defined(__ppc__)) && defined(__GLIBC__)) || \
defined(_M_IX86) || defined(_M_X64)
#define ABSL_HAVE_UNSCALED_CYCLECLOCK_IMPLEMENTATION 1
#else
--- a/third_party/abseil-cpp/absl/debugging/internal/examine_stack.cc
+++ b/third_party/abseil-cpp/absl/debugging/internal/examine_stack.cc
@@ -63,8 +63,10 @@ void* GetProgramCounter(void* vuc) {
return reinterpret_cast<void*>(context->uc_mcontext.pc);
#elif defined(__powerpc64__)
return reinterpret_cast<void*>(context->uc_mcontext.gp_regs[32]);
-#elif defined(__powerpc__)
+#elif defined(__powerpc__) && defined(__GLIBC__)
return reinterpret_cast<void*>(context->uc_mcontext.uc_regs->gregs[32]);
+#elif defined(__powerpc__)
+ return reinterpret_cast<void*>(context->uc_mcontext.gregs[32]);
#elif defined(__riscv)
return reinterpret_cast<void*>(context->uc_mcontext.__gregs[REG_PC]);
#elif defined(__s390__) && !defined(__s390x__)
--- a/third_party/abseil-cpp/absl/debugging/internal/stacktrace_config.h
+++ b/third_party/abseil-cpp/absl/debugging/internal/stacktrace_config.h
@@ -64,7 +64,7 @@
#elif defined(__i386__) || defined(__x86_64__)
#define ABSL_STACKTRACE_INL_HEADER \
"absl/debugging/internal/stacktrace_x86-inl.inc"
-#elif defined(__ppc__) || defined(__PPC__)
+#elif (defined(__ppc__) || defined(__PPC__)) && defined(__GLIBC__)
#define ABSL_STACKTRACE_INL_HEADER \
"absl/debugging/internal/stacktrace_powerpc-inl.inc"
#elif defined(__aarch64__)

View File

@ -1,34 +0,0 @@
gRPC requires abseil, but abseil can be statically linked to avoid installing
and tracking a ton of extra shared libs. Unfortunately, grpcpp headers now
include absl headers, so these need to be installed. Put them in a private
location because the full abseil installation is not provided.
diff -ur third_party/abseil-cpp/CMakeLists.txt third_party/abseil-cpp/CMakeLists.txt
--- a/third_party/abseil-cpp/CMakeLists.txt
+++ b/third_party/abseil-cpp/CMakeLists.txt
@@ -46,6 +46,7 @@
OPTION(BUILD_TESTING "Build tests" OFF)
project(absl LANGUAGES CXX VERSION 20210324)
+set(BUILD_SHARED_LIBS OFF)
include(CTest)
# Output directory is correct by default for most build setups. However, when
@@ -57,7 +58,7 @@
# when absl is included as subproject (i.e. using add_subdirectory(abseil-cpp))
# in the source tree of a project that uses it, install rules are disabled.
if(NOT CMAKE_SOURCE_DIR STREQUAL PROJECT_SOURCE_DIR)
- option(ABSL_ENABLE_INSTALL "Enable install rule" OFF)
+ option(ABSL_ENABLE_INSTALL "Enable install rule" ON)
else()
option(ABSL_ENABLE_INSTALL "Enable install rule" ON)
endif()
@@ -176,7 +177,7 @@
endif() # absl_VERSION
install(DIRECTORY absl
- DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/grpc_absl
FILES_MATCHING
PATTERN "*.inc"
PATTERN "*.h"

View File

@ -1,25 +1,22 @@
# Template file for 'grpc'
pkgname=grpc
version=1.39.1
revision=8
_abseilver=997aaf3a28308eba1b9156aa35ab7bca9688e9f6
version=1.49.1
revision=1
build_style=cmake
configure_args="-DBUILD_SHARED_LIBS=ON
-DgRPC_CARES_PROVIDER=package -DgRPC_PROTOBUF_PROVIDER=package
-DgRPC_SSL_PROVIDER=package -DgRPC_ZLIB_PROVIDER=package
-D_gRPC_RE2_LIBRARIES=-lre2
-DgRPC_ABSL_PROVIDER=package -D_gRPC_RE2_LIBRARIES=-lre2
-D_gRPC_RE2_INCLUDE_DIR=${XBPS_CROSS_BASE}/usr/include"
hostmakedepends="which protobuf"
_devel_depends="c-ares-devel re2-devel zlib-devel openssl-devel"
_devel_depends="c-ares-devel re2-devel zlib-devel openssl-devel abseil-cpp-devel"
makedepends="libprotoc-devel protobuf-devel gperftools-devel ${_devel_depends}"
short_desc="High performance, open source, general RPC framework"
maintainer="Orphaned <orphan@voidlinux.org>"
license="Apache-2.0"
homepage="https://github.com/grpc/grpc"
distfiles="${homepage}/archive/v${version}/${pkgname}-${version}.tar.gz
https://github.com/abseil/abseil-cpp/archive/${_abseilver}/abseil-cpp-${_abseilver}.tar.gz"
checksum="024118069912358e60722a2b7e507e9c3b51eeaeee06e2dd9d95d9c16f6639ec
35f22ef5cb286f09954b7cc4c85b5a3f6221c9d4df6b8c4a1e9d399555b366ee"
distfiles="${homepage}/archive/v${version}/${pkgname}-${version}.tar.gz"
checksum=5071b630e2a14707ad060636990f1b25b0984bd168c7ea1ab95e48a3bdc0081f
if [ "$CROSS_BUILD" ]; then
# need host grpc_cpp_plugin
@ -31,31 +28,6 @@ if [ "$XBPS_TARGET_NO_ATOMIC8" ]; then
configure_args+=" -DCMAKE_CXX_STANDARD_LIBRARIES=-latomic"
fi
post_extract() {
rm -rf third_party/abseil-cpp
mv ../abseil-cpp-${_abseilver} third_party/abseil-cpp
}
post_patch() {
# re2 doesn't install CMake config modules;
# key variables are set in configure_args
# also install all plugin on cross-compiling
vsed -i CMakeLists.txt -e '/include(cmake\/re2\.cmake)/d' \
-e 's/gRPC_INSTALL AND NOT CMAKE_CROSSCOMPILING/gRPC_INSTALL/'
}
post_install() {
# Remove unnecessary absl static libs, pkg-config and cmake modules
rm "${DESTDIR}"/usr/lib/libabsl*.a
rm -rf "${DESTDIR}/usr/lib/pkgconfig/"absl_*
rm -rf "${DESTDIR}/usr/lib/cmake/absl"
# Clean up unneeded absl linker arguments from cmake files
sed -e 's/absl::[a-zA-Z_-]*;//g' \
-e 's/ "absl::[a-zA-Z_-]*"/ /g' \
-i ${DESTDIR}/usr/lib/cmake/grpc/gRPCTargets.cmake
}
libgrpc_package() {
short_desc+=" - libraries"
pkg_install() {