From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <gentoo-commits+bounces-1548237-garchives=archives.gentoo.org@lists.gentoo.org>
Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256)
	(No client certificate requested)
	by finch.gentoo.org (Postfix) with ESMTPS id F246C15800A
	for <garchives@archives.gentoo.org>; Mon, 21 Aug 2023 15:23:33 +0000 (UTC)
Received: from pigeon.gentoo.org (localhost [127.0.0.1])
	by pigeon.gentoo.org (Postfix) with SMTP id 21C082BC018;
	Mon, 21 Aug 2023 15:23:33 +0000 (UTC)
Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(No client certificate requested)
	by pigeon.gentoo.org (Postfix) with ESMTPS id 03F652BC018
	for <gentoo-commits@lists.gentoo.org>; Mon, 21 Aug 2023 15:23:32 +0000 (UTC)
Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(No client certificate requested)
	by smtp.gentoo.org (Postfix) with ESMTPS id C8147341251
	for <gentoo-commits@lists.gentoo.org>; Mon, 21 Aug 2023 15:23:31 +0000 (UTC)
Received: from localhost.localdomain (localhost [IPv6:::1])
	by oystercatcher.gentoo.org (Postfix) with ESMTP id 32713F86
	for <gentoo-commits@lists.gentoo.org>; Mon, 21 Aug 2023 15:23:30 +0000 (UTC)
From: "Sam James" <sam@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Content-Transfer-Encoding: 8bit
Content-type: text/plain; charset=UTF-8
Reply-To: gentoo-dev@lists.gentoo.org, "Sam James" <sam@gentoo.org>
Message-ID: <1692631401.61d0b43d739b703ee9f25abefb04ba0bdf1ac158.sam@gentoo>
Subject: [gentoo-commits] repo/gentoo:master commit in: net-libs/grpc/
X-VCS-Repository: repo/gentoo
X-VCS-Files: net-libs/grpc/Manifest net-libs/grpc/grpc-1.52.1-r1.ebuild net-libs/grpc/grpc-1.52.1.ebuild
X-VCS-Directories: net-libs/grpc/
X-VCS-Committer: sam
X-VCS-Committer-Name: Sam James
X-VCS-Revision: 61d0b43d739b703ee9f25abefb04ba0bdf1ac158
X-VCS-Branch: master
Date: Mon, 21 Aug 2023 15:23:30 +0000 (UTC)
Precedence: bulk
List-Post: <mailto:gentoo-commits@lists.gentoo.org>
List-Help: <mailto:gentoo-commits+help@lists.gentoo.org>
List-Unsubscribe: <mailto:gentoo-commits+unsubscribe@lists.gentoo.org>
List-Subscribe: <mailto:gentoo-commits+subscribe@lists.gentoo.org>
List-Id: Gentoo Linux mail <gentoo-commits.gentoo.org>
X-BeenThere: gentoo-commits@lists.gentoo.org
X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply
X-Archives-Salt: 50319561-d5e4-42ad-bb54-26cfdad1f231
X-Archives-Hash: 82f7ea8088ad3359bdf3ca1d23776702

commit:     61d0b43d739b703ee9f25abefb04ba0bdf1ac158
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Aug 21 15:03:41 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Aug 21 15:23:21 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=61d0b43d

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 <AT> gentoo.org>

 net-libs/grpc/Manifest                                  |  1 +
 .../grpc/{grpc-1.52.1.ebuild => grpc-1.52.1-r1.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
similarity index 82%
rename from net-libs/grpc/grpc-1.52.1.ebuild
rename to 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}"