Skip to content
Draft
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
31 changes: 5 additions & 26 deletions recipes/grpc/all/conandata.yml
Original file line number Diff line number Diff line change
@@ -1,34 +1,13 @@
sources:
"1.72.0":
url: "https://github.com/grpc/grpc/archive/v1.72.0.tar.gz"
sha256: "4a8aa99d5e24f80ea6b7ec95463e16af5bd91aa805e26c661ef6491ae3d2d23c"
"1.71.0":
url: "https://github.com/grpc/grpc/archive/v1.71.0.tar.gz"
sha256: "0d631419e54ec5b29def798623ee3bf5520dac77abeab3284ef7027ec2363f91"
"1.69.0":
"1.78.1":
url: "https://github.com/grpc/grpc/archive/refs/tags/v1.78.1.tar.gz"
sha256: "961a44a2a5a50670e58f5e887c17fe70529253da23802245326d681f6d8d1ba6"
"1.69.0": # this is the last version that supports C++14
url: "https://github.com/grpc/grpc/archive/v1.69.0.tar.gz"
sha256: "cd256d91781911d46a57506978b3979bfee45d5086a1b6668a3ae19c5e77f8dc"
"1.67.1":
url: "https://github.com/grpc/grpc/archive/v1.67.1.tar.gz"
sha256: "d74f8e99a433982a12d7899f6773e285c9824e1d9a173ea1d1fb26c9bd089299"
"1.65.0":
url: "https://github.com/grpc/grpc/archive/v1.65.0.tar.gz"
sha256: "ebc3acfde70cfae3f4f04b8dbb72259540cb1dc427be362569fbc2607dabfe39"
"1.54.3":
"1.54.3": # this is still referenced explicitly by other recipes
url: "https://github.com/grpc/grpc/archive/v1.54.3.tar.gz"
sha256: "17e4e1b100657b88027721220cbfb694d86c4b807e9257eaf2fb2d273b41b1b1"
"1.50.1":
url: "https://github.com/grpc/grpc/archive/v1.50.1.tar.gz"
sha256: "fb1ed98eb3555877d55eb2b948caca44bc8601c6704896594de81558639709ef"
"1.50.0":
url: "https://github.com/grpc/grpc/archive/v1.50.0.tar.gz"
sha256: "76900ab068da86378395a8e125b5cc43dfae671e09ff6462ddfef18676e2165a"
patches:
"1.54.3":
- patch_file: "patches/v1.50.x/002-CMake-Add-gRPC_USE_SYSTEMD-option-34384.patch"
patch_type: "backport"
patch_source: "https://github.com/grpc/grpc/commit/5c3400e8dc08d0810e3301d7e8cd8a718c82eeed"
"1.50.1":
- patch_file: "patches/v1.50.x/001-disable-cppstd-override.patch"
"1.50.0":
- patch_file: "patches/v1.50.x/001-disable-cppstd-override.patch"
30 changes: 13 additions & 17 deletions recipes/grpc/all/conanfile.py
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ def _cxxstd_required(self):

@property
def _supports_libsystemd(self):
return self.settings.os in ["Linux", "FreeBSD"] and Version(self.version) >= "1.52"
return self.settings.os in ["Linux", "FreeBSD"]

def export(self):
copy(self, f"target_info/grpc_{self.version}.yml", src=self.recipe_folder, dst=self.export_folder)
Expand Down Expand Up @@ -102,18 +102,22 @@ def requirements(self):
# abseil requires:
# transitive_headers=True because grpc headers include abseil headers
# transitive_libs=True because generated code (grpc_cpp_plugin) require symbols from abseil
if Version(self.version) > "1.65.0":
self.requires("protobuf/5.27.0", transitive_headers=True)
grpc_version = Version(self.version)
if grpc_version > "1.69.0":
self.requires("protobuf/[>=5.27.0 <7]", transitive_headers=True)
self.requires("abseil/[*]", transitive_headers=True, transitive_libs=True)
self.requires("re2/[>=20251105]")
elif grpc_version >= "1.65.0":
self.requires("protobuf/[>=5.27.0 <6]", transitive_headers=True)
# note: the most recent protobuf in the range is 6.33.5 and supports abseil up to <=20250814.0
self.requires("abseil/[>=20240116.1 <=20250127.0]", transitive_headers=True, transitive_libs=True)
elif Version(self.version) >= "1.62.0" and Version(self.version) <= "1.65.0":
self.requires("protobuf/5.27.0", transitive_headers=True)
self.requires("abseil/[>=20240116.1 <20240117.0]", transitive_headers=True, transitive_libs=True)
self.requires("re2/20250722")
else:
self.requires("abseil/[>=20230125.3 <=20230802.1]", transitive_headers=True, transitive_libs=True)
self.requires("protobuf/3.21.12", transitive_headers=True)
self.requires("re2/20230301")
self.requires("c-ares/[>=1.19.1 <2]")
self.requires("openssl/[>=1.1 <4]")
self.requires("re2/20230301")
self.requires("zlib/[>=1.2.11 <2]")
if self.options.get_safe("with_libsystemd"):
if Version(self.version) >= "1.67.0":
Expand All @@ -132,11 +136,7 @@ def validate(self):
if is_msvc(self) and self.options.shared:
raise ConanInvalidConfiguration(f"{self.ref} shared not supported by Visual Studio")

if Version(self.version) >= "1.47" and self.settings.compiler == "gcc" and Version(self.settings.compiler.version) < "6":
raise ConanInvalidConfiguration("GCC older than 6 is not supported")

if self.settings.compiler.get_safe("cppstd"):
check_min_cppstd(self, self._cxxstd_required)
check_min_cppstd(self, self._cxxstd_required)

if self.options.shared and not self.dependencies.host["protobuf"].options.shared:
raise ConanInvalidConfiguration(
Expand All @@ -151,7 +151,7 @@ def validate(self):
def build_requirements(self):
# cmake >=3.25 required to use `cmake -E env --modify` below
# note: grpc 1.69.0 requires cmake >=3.16
self.tool_requires("cmake/[>=3.25 <4]")
self.tool_requires("cmake/[>=3.25]")
self.tool_requires("protobuf/<host_version>")
if cross_building(self):
# when cross compiling we need pre compiled grpc plugins for protoc
Expand Down Expand Up @@ -205,7 +205,6 @@ def generate(self):
# (supported in gRPC >= 1.62.0)
tc.cache_variables["gRPC_DOWNLOAD_ARCHIVES"] = False


# Consumed targets (abseil) via interface target_compiler_feature can propagate newer standards
if not valid_min_cppstd(self, self._cxxstd_required):
tc.cache_variables["CMAKE_CXX_STANDARD"] = self._cxxstd_required
Expand All @@ -217,9 +216,6 @@ def generate(self):
if self._supports_libsystemd:
tc.cache_variables["gRPC_USE_SYSTEMD"] = self.options.with_libsystemd

if Version(self.version) >= "1.62.0":
tc.cache_variables["gRPC_DOWNLOAD_ARCHIVES"] = False

tc.generate()

cmake_deps = CMakeDeps(self)
Expand Down
120 changes: 0 additions & 120 deletions recipes/grpc/all/target_info/grpc_1.50.0.yml

This file was deleted.

120 changes: 0 additions & 120 deletions recipes/grpc/all/target_info/grpc_1.50.1.yml

This file was deleted.

Loading