commit: 785694f030cc5eeb3d919e37e606a046bac25584
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Aug 21 19:52:49 2023 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Aug 21 19:52:49 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=785694f0
net-libs/grpc: fix CMake module
Signed-off-by: Sam James <sam <AT> gentoo.org>
net-libs/grpc/files/grpc-1.57.0-fix-cmake.patch | 29 ++++++++++++++++++++++
.../{grpc-1.57.0.ebuild => grpc-1.57.0-r1.ebuild} | 4 +++
2 files changed, 33 insertions(+)
diff --git a/net-libs/grpc/files/grpc-1.57.0-fix-cmake.patch
b/net-libs/grpc/files/grpc-1.57.0-fix-cmake.patch
new file mode 100644
index 000000000000..1caa9e9bb8f8
--- /dev/null
+++ b/net-libs/grpc/files/grpc-1.57.0-fix-cmake.patch
@@ -0,0 +1,29 @@
+https://github.com/grpc/grpc/pull/33361
+
+From 117dc80eb43021dd5619023ef6d02d0d6ec7ae7a Mon Sep 17 00:00:00 2001
+From: Carlo Cabrera <[email protected]>
+Date: Wed, 7 Jun 2023 13:06:49 +0800
+Subject: [PATCH] [Build] fix `gRPCConfig.cmake`
+
+Without this change, calling `find_package(gRPC REQUIRED)` errors out
+with
+
+ CMake Error at /opt/homebrew/lib/cmake/grpc/gRPCConfig.cmake:8
(find_dependency):
+ Unknown CMake command "find_dependency".
+
+The issue is that `find_dependency` is provided by the
+`CMakeFindDependencyMacro` module[^1], so we need to `include` it before
+use.
+
+[^1]: https://cmake.org/cmake/help/v3.26/module/CMakeFindDependencyMacro.html
+--- a/cmake/protobuf.cmake
++++ b/cmake/protobuf.cmake
+@@ -86,6 +86,6 @@ elseif(gRPC_PROTOBUF_PROVIDER STREQUAL "package")
+ set(_gRPC_PROTOBUF_PROTOC_EXECUTABLE ${PROTOBUF_PROTOC_EXECUTABLE})
+ endif()
+ endif()
+- set(_gRPC_FIND_PROTOBUF "find_dependency(Protobuf CONFIG)")
++ set(_gRPC_FIND_PROTOBUF
"include(CMakeFindDependencyMacro)\nfind_dependency(Protobuf CONFIG)")
+ endif()
+ endif()
+
diff --git a/net-libs/grpc/grpc-1.57.0.ebuild
b/net-libs/grpc/grpc-1.57.0-r1.ebuild
similarity index 98%
rename from net-libs/grpc/grpc-1.57.0.ebuild
rename to net-libs/grpc/grpc-1.57.0-r1.ebuild
index 77e08df80530..3b44163c341f 100644
--- a/net-libs/grpc/grpc-1.57.0.ebuild
+++ b/net-libs/grpc/grpc-1.57.0-r1.ebuild
@@ -43,6 +43,10 @@ RESTRICT="test"
S="${WORKDIR}/${PN}-${MY_PV}"
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.57.0-fix-cmake.patch
+)
+
soversion_check() {
local core_sover cpp_sover
# extract quoted number. line we check looks like this:
'set(gRPC_CPP_SOVERSION "1.37")'