diff options
author | Sam James <sam@gentoo.org> | 2023-08-21 16:03:41 +0100 |
---|---|---|
committer | Sam James <sam@gentoo.org> | 2023-08-21 16:23:21 +0100 |
commit | 61d0b43d739b703ee9f25abefb04ba0bdf1ac158 (patch) | |
tree | da4d5697803a1694d7d0f23c99a90100376bef40 /net-libs/grpc | |
parent | net-misc/linuxptp: stabilize 4.0 for amd64 (diff) | |
download | gentoo-61d0b43d739b703ee9f25abefb04ba0bdf1ac158.tar.gz gentoo-61d0b43d739b703ee9f25abefb04ba0bdf1ac158.tar.bz2 gentoo-61d0b43d739b703ee9f25abefb04ba0bdf1ac158.zip |
net-libs/grpc: bundle abseil-cpp
abseil isn't *really* intended to be a system library and having a year-old
pinned dep like this causes havoc for other packages and leads to uninstallable
combinations (e.g. libreoffice-bin + anything needing grpc).
Please see also the extensive discussion in the linked PRs wrt abseil now
depending on re2 and the ABI implications of the used C++ std. versions with
abseil. It's not worth it and there's more downsides to unbundling than not.
Note that we can't rebundle re2 here because the build system unconditionally
then tries to install it (no toggle unlike for abseil-cpp).
Bug: https://bugs.gentoo.org/906811
Bug: https://github.com/gentoo/gentoo/pull/31388
Bug: https://github.com/gentoo/gentoo/pull/31609
Bug: https://github.com/gentoo/gentoo/pull/31893
Bug: https://github.com/gentoo/gentoo/pull/32281
Closes: https://bugs.gentoo.org/908373
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'net-libs/grpc')
-rw-r--r-- | net-libs/grpc/Manifest | 1 | ||||
-rw-r--r-- | net-libs/grpc/grpc-1.52.1-r1.ebuild (renamed from net-libs/grpc/grpc-1.52.1.ebuild) | 17 |
2 files changed, 14 insertions, 4 deletions
diff --git a/net-libs/grpc/Manifest b/net-libs/grpc/Manifest index 748c6d78954c..f96b5140be56 100644 --- a/net-libs/grpc/Manifest +++ b/net-libs/grpc/Manifest @@ -1 +1,2 @@ +DIST abseil-cpp-20220623.1.tar.gz 1957483 BLAKE2B 5bcf60b5a55882bcb78c7095a9892f6d1e5819fb116e325a8299fb22780ab009f0e1d92d5d8aca5ae0d4acc6d60e620e3357a24e389059f6e75d94f1cbdc1ced SHA512 ab4fccd9a2bfa0c5ad4b56c8e8f8b7ec7a8eca8b6cc6959802acadd1da785e1feb078c6ac621808cd699c82717a9e637dc426d94b70a8db7f2a807059d41cbc2 DIST grpc-1.52.1.tar.gz 8686340 BLAKE2B 0076ddd4a2840892f4ad11885e18f782b6a645337224974522c5f828d0226d6a1e19aaaf0f30ea3225d56118e0cfc251d45b8d5e6811c2d1a84e274ff037bb53 SHA512 06c69fb817af75b2610761a3a193178b749755eb7bed58875aa251def7c0c253cdaf02cf834c31c8b2cae7b01a6081e2aece4b131a162f64bd45ff0aff4d7758 diff --git a/net-libs/grpc/grpc-1.52.1.ebuild b/net-libs/grpc/grpc-1.52.1-r1.ebuild index c36f6dbeb491..780e0ab91b8f 100644 --- a/net-libs/grpc/grpc-1.52.1.ebuild +++ b/net-libs/grpc/grpc-1.52.1-r1.ebuild @@ -3,13 +3,20 @@ EAPI=8 -inherit cmake +inherit cmake flag-o-matic MY_PV="${PV//_pre/-pre}" +# Check third_party/abseil-cpp's commit for each tag of ${PN} +# It may correspond to a commit of abseil-cpp - if so, use the tarball for it +# and not an arbitrary commit. +ABSEIL_COMMIT="20220623.1" DESCRIPTION="Modern open source high performance RPC framework" HOMEPAGE="https://www.grpc.io" -SRC_URI="https://github.com/${PN}/${PN}/archive/v${MY_PV}.tar.gz -> ${P}.tar.gz" +SRC_URI=" + https://github.com/${PN}/${PN}/archive/v${MY_PV}.tar.gz -> ${P}.tar.gz + https://github.com/abseil/abseil-cpp/archive/refs/tags/${ABSEIL_COMMIT}.tar.gz -> abseil-cpp-${ABSEIL_COMMIT}.tar.gz +" LICENSE="Apache-2.0" # format is 0/${CORE_SOVERSION//./}.${CPP_SOVERSION//./} , check top level CMakeLists.txt @@ -19,7 +26,6 @@ IUSE="doc examples test" # look for submodule versions in third_party dir RDEPEND=" - =dev-cpp/abseil-cpp-20220623.1*:= >=dev-libs/re2-0.2021.11.01:= >=dev-libs/openssl-1.1.1:0=[-bindist(-)] >=dev-libs/protobuf-3.18.1:= @@ -72,7 +78,10 @@ src_configure() { local mycmakeargs=( -DgRPC_INSTALL=ON - -DgRPC_ABSL_PROVIDER=package + -DgRPC_ABSL_PROVIDER=module + -DgRPC_INSTALL=OFF + -DABSL_ENABLE_INSTALL=OFF + -DABSL_ROOT_DIR="${WORKDIR}"/abseil-cpp-${ABSEIL_COMMIT} -DgRPC_BACKWARDS_COMPATIBILITY_MODE=OFF -DgRPC_CARES_PROVIDER=package -DgRPC_INSTALL_CMAKEDIR="$(get_libdir)/cmake/${PN}" |