commit: 34d0dfc22c5fe3a2ac998652053ecd3af9ffca70 Author: Paul Zander <negril.nx+gentoo <AT> gmail <DOT> com> AuthorDate: Sat Apr 5 12:22:34 2025 +0000 Commit: Sam James <sam <AT> gentoo <DOT> org> CommitDate: Fri Apr 11 09:47:05 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=34d0dfc2
dev-cpp/abseil-cpp: add USE=test-helpers USE=test-helpers builds libraries required to build tests against Abseil code. Closes: https://bugs.gentoo.org/953140 Signed-off-by: Paul Zander <negril.nx+gentoo <AT> gmail.com> Signed-off-by: Sam James <sam <AT> gentoo.org> dev-cpp/abseil-cpp/abseil-cpp-20230802.3.ebuild | 19 ++++++++++++------- dev-cpp/abseil-cpp/abseil-cpp-20240116.3.ebuild | 19 ++++++++++++------- dev-cpp/abseil-cpp/abseil-cpp-20240722.1.ebuild | 18 +++++++++++------- dev-cpp/abseil-cpp/abseil-cpp-20250127.0.ebuild | 17 ++++++++++------- dev-cpp/abseil-cpp/metadata.xml | 3 +++ dev-libs/protobuf/protobuf-25.6.ebuild | 8 +++++++- dev-libs/protobuf/protobuf-28.3-r1.ebuild | 8 +++++++- dev-libs/protobuf/protobuf-29.4.ebuild | 8 +++++++- dev-libs/protobuf/protobuf-30.2.ebuild | 8 +++++++- dev-libs/protobuf/protobuf-9999.ebuild | 8 +++++++- 10 files changed, 83 insertions(+), 33 deletions(-) diff --git a/dev-cpp/abseil-cpp/abseil-cpp-20230802.3.ebuild b/dev-cpp/abseil-cpp/abseil-cpp-20230802.3.ebuild index dd1810a5fe1a..020e26fc0ec0 100644 --- a/dev-cpp/abseil-cpp/abseil-cpp-20230802.3.ebuild +++ b/dev-cpp/abseil-cpp/abseil-cpp-20230802.3.ebuild @@ -14,10 +14,10 @@ SRC_URI="https://github.com/abseil/abseil-cpp/archive/${PV}.tar.gz -> ${P}.tar.g LICENSE="Apache-2.0" SLOT="0/${PV:2:4}.$(ver_cut 2).0" KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~sparc ~x86" -IUSE="test" +IUSE="test test-helpers" RDEPEND=" - test? ( + test-helpers? ( dev-cpp/gtest:=[${MULTILIB_USEDEP}] ) " @@ -45,6 +45,7 @@ src_prepare() { use ppc && eapply "${FILESDIR}/${PN}-atomic.patch" # un-hardcode abseil compiler flags + # 942192 sed -i \ -e '/"-maes",/d' \ -e '/"-msse4.1",/d' \ @@ -63,14 +64,18 @@ multilib_src_configure() { # We use -std=c++14 here so that abseil-cpp's string_view is used # See the discussion in https://github.com/gentoo/gentoo/pull/32281. -DCMAKE_CXX_STANDARD=14 - -DABSL_ENABLE_INSTALL=TRUE - -DABSL_USE_EXTERNAL_GOOGLETEST=ON - -DABSL_PROPAGATE_CXX_STD=TRUE + + -DABSL_ENABLE_INSTALL="yes" + -DABSL_USE_EXTERNAL_GOOGLETEST="yes" + -DABSL_PROPAGATE_CXX_STD="yes" + # TEST_HELPERS needed for protobuf (bug #915902) - -DABSL_BUILD_TEST_HELPERS="$(usex test)" + -DABSL_BUILD_TEST_HELPERS="$(usex test-helpers)" + -DABSL_BUILD_TESTING="$(usex test)" ) - # intentional use, it uses both variables for tests. + # intentional use, it requires both variables for tests. + # (BUILD_TESTING AND ABSL_BUILD_TESTING) if use test; then mycmakeargs+=( -DBUILD_TESTING="yes" diff --git a/dev-cpp/abseil-cpp/abseil-cpp-20240116.3.ebuild b/dev-cpp/abseil-cpp/abseil-cpp-20240116.3.ebuild index 9f5cd6299aed..e99a4b190279 100644 --- a/dev-cpp/abseil-cpp/abseil-cpp-20240116.3.ebuild +++ b/dev-cpp/abseil-cpp/abseil-cpp-20240116.3.ebuild @@ -14,10 +14,10 @@ SRC_URI="https://github.com/abseil/abseil-cpp/archive/${PV}.tar.gz -> ${P}.tar.g LICENSE="Apache-2.0" SLOT="0/${PV:2:4}.$(ver_cut 2).0" KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos" -IUSE="test" +IUSE="test test-helpers" RDEPEND=" - test? ( + test-helpers? ( dev-cpp/gtest:=[${MULTILIB_USEDEP}] ) " @@ -45,6 +45,7 @@ src_prepare() { use ppc && eapply "${FILESDIR}/${PN}-atomic.patch" # un-hardcode abseil compiler flags + # 942192 sed -i \ -e '/"-maes",/d' \ -e '/"-msse4.1",/d' \ @@ -63,14 +64,18 @@ multilib_src_configure() { # We use -std=c++14 here so that abseil-cpp's string_view is used # See the discussion in https://github.com/gentoo/gentoo/pull/32281. -DCMAKE_CXX_STANDARD=14 - -DABSL_ENABLE_INSTALL=TRUE - -DABSL_USE_EXTERNAL_GOOGLETEST=ON - -DABSL_PROPAGATE_CXX_STD=TRUE + + -DABSL_ENABLE_INSTALL="yes" + -DABSL_USE_EXTERNAL_GOOGLETEST="yes" + -DABSL_PROPAGATE_CXX_STD="yes" + # TEST_HELPERS needed for protobuf (bug #915902) - -DABSL_BUILD_TEST_HELPERS="$(usex test)" + -DABSL_BUILD_TEST_HELPERS="$(usex test-helpers)" + -DABSL_BUILD_TESTING="$(usex test)" ) - # intentional use, it uses both variables for tests. + # intentional use, it requires both variables for tests. + # (BUILD_TESTING AND ABSL_BUILD_TESTING) if use test; then mycmakeargs+=( -DBUILD_TESTING="yes" diff --git a/dev-cpp/abseil-cpp/abseil-cpp-20240722.1.ebuild b/dev-cpp/abseil-cpp/abseil-cpp-20240722.1.ebuild index 980635fdd36e..420b0a925935 100644 --- a/dev-cpp/abseil-cpp/abseil-cpp-20240722.1.ebuild +++ b/dev-cpp/abseil-cpp/abseil-cpp-20240722.1.ebuild @@ -14,10 +14,10 @@ SRC_URI="https://github.com/abseil/abseil-cpp/archive/${PV}.tar.gz -> ${P}.tar.g LICENSE="Apache-2.0" SLOT="0/${PV:2:4}.$(ver_cut 2).0" KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos" -IUSE="test" +IUSE="test test-helpers" RDEPEND=" - test? ( + test-helpers? ( dev-cpp/gtest:=[${MULTILIB_USEDEP}] ) " @@ -44,6 +44,7 @@ src_prepare() { use ppc && eapply "${FILESDIR}/${PN}-atomic.patch" # un-hardcode abseil compiler flags + # 942192 sed -i \ -e '/"-maes",/d' \ -e '/"-msse4.1",/d' \ @@ -59,14 +60,17 @@ src_prepare() { multilib_src_configure() { local mycmakeargs=( - -DABSL_ENABLE_INSTALL=TRUE - -DABSL_USE_EXTERNAL_GOOGLETEST=ON - -DABSL_PROPAGATE_CXX_STD=TRUE + -DABSL_ENABLE_INSTALL="yes" + -DABSL_USE_EXTERNAL_GOOGLETEST="yes" + -DABSL_PROPAGATE_CXX_STD="yes" + # TEST_HELPERS needed for protobuf (bug #915902) - -DABSL_BUILD_TEST_HELPERS="$(usex test)" + -DABSL_BUILD_TEST_HELPERS="$(usex test-helpers)" + -DABSL_BUILD_TESTING="$(usex test)" ) - # intentional use, it uses both variables for tests. + # intentional use, it requires both variables for tests. + # (BUILD_TESTING AND ABSL_BUILD_TESTING) if use test; then mycmakeargs+=( -DBUILD_TESTING="yes" diff --git a/dev-cpp/abseil-cpp/abseil-cpp-20250127.0.ebuild b/dev-cpp/abseil-cpp/abseil-cpp-20250127.0.ebuild index 896be16ff5ca..481480e5aadd 100644 --- a/dev-cpp/abseil-cpp/abseil-cpp-20250127.0.ebuild +++ b/dev-cpp/abseil-cpp/abseil-cpp-20250127.0.ebuild @@ -18,10 +18,10 @@ SRC_URI=" LICENSE="Apache-2.0" SLOT="0/${PV:2:4}.$(ver_cut 2).0" KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos" -IUSE="test" +IUSE="test test-helpers" RDEPEND=" - test? ( + test-helpers? ( dev-cpp/gtest:=[${MULTILIB_USEDEP}] ) " @@ -60,14 +60,17 @@ src_prepare() { multilib_src_configure() { local mycmakeargs=( - -DABSL_ENABLE_INSTALL=TRUE - -DABSL_USE_EXTERNAL_GOOGLETEST=ON - -DABSL_PROPAGATE_CXX_STD=TRUE + -DABSL_ENABLE_INSTALL="yes" + -DABSL_USE_EXTERNAL_GOOGLETEST="yes" + -DABSL_PROPAGATE_CXX_STD="yes" + # TEST_HELPERS needed for protobuf (bug #915902) - -DABSL_BUILD_TEST_HELPERS="$(usex test)" + -DABSL_BUILD_TEST_HELPERS="$(usex test-helpers)" + -DABSL_BUILD_TESTING="$(usex test)" ) - # intentional use, it uses both variables for tests. + # intentional use, it requires both variables for tests. + # (BUILD_TESTING AND ABSL_BUILD_TESTING) if use test; then mycmakeargs+=( -DBUILD_TESTING="yes" diff --git a/dev-cpp/abseil-cpp/metadata.xml b/dev-cpp/abseil-cpp/metadata.xml index 16dd7edb45a5..be95e3ba574c 100644 --- a/dev-cpp/abseil-cpp/metadata.xml +++ b/dev-cpp/abseil-cpp/metadata.xml @@ -13,4 +13,7 @@ <upstream> <remote-id type="github">abseil/abseil-cpp</remote-id> </upstream> + <use> + <flag name="test-helpers">Build libraries that you can use to write tests against Abseil code.</flag> + </use> </pkgmetadata> diff --git a/dev-libs/protobuf/protobuf-25.6.ebuild b/dev-libs/protobuf/protobuf-25.6.ebuild index e947731a59ef..fcac9b8ecbff 100644 --- a/dev-libs/protobuf/protobuf-25.6.ebuild +++ b/dev-libs/protobuf/protobuf-25.6.ebuild @@ -51,7 +51,13 @@ COMMON_DEPEND=" DEPEND=" ${COMMON_DEPEND} conformance? ( dev-libs/jsoncpp[${MULTILIB_USEDEP}] ) - test? ( >=dev-cpp/gtest-1.11[${MULTILIB_USEDEP}] ) + test? ( + || ( + dev-cpp/abseil-cpp[test-helpers(-)] + dev-cpp/abseil-cpp[test] + ) + dev-cpp/gtest[${MULTILIB_USEDEP}] + ) " RDEPEND=" ${COMMON_DEPEND} diff --git a/dev-libs/protobuf/protobuf-28.3-r1.ebuild b/dev-libs/protobuf/protobuf-28.3-r1.ebuild index e53658010cb3..659a39c8264d 100644 --- a/dev-libs/protobuf/protobuf-28.3-r1.ebuild +++ b/dev-libs/protobuf/protobuf-28.3-r1.ebuild @@ -52,7 +52,13 @@ COMMON_DEPEND=" DEPEND=" ${COMMON_DEPEND} conformance? ( dev-libs/jsoncpp[${MULTILIB_USEDEP}] ) - test? ( >=dev-cpp/gtest-1.11[${MULTILIB_USEDEP}] ) + test? ( + || ( + dev-cpp/abseil-cpp[test-helpers(-)] + dev-cpp/abseil-cpp[test] + ) + dev-cpp/gtest[${MULTILIB_USEDEP}] + ) " RDEPEND=" ${COMMON_DEPEND} diff --git a/dev-libs/protobuf/protobuf-29.4.ebuild b/dev-libs/protobuf/protobuf-29.4.ebuild index 8ce1e903d955..1d23dc9b0ce9 100644 --- a/dev-libs/protobuf/protobuf-29.4.ebuild +++ b/dev-libs/protobuf/protobuf-29.4.ebuild @@ -52,7 +52,13 @@ COMMON_DEPEND=" DEPEND=" ${COMMON_DEPEND} conformance? ( dev-libs/jsoncpp[${MULTILIB_USEDEP}] ) - test? ( >=dev-cpp/gtest-1.11[${MULTILIB_USEDEP}] ) + test? ( + || ( + dev-cpp/abseil-cpp[test-helpers(-)] + dev-cpp/abseil-cpp[test] + ) + dev-cpp/gtest[${MULTILIB_USEDEP}] + ) " RDEPEND=" ${COMMON_DEPEND} diff --git a/dev-libs/protobuf/protobuf-30.2.ebuild b/dev-libs/protobuf/protobuf-30.2.ebuild index b100f58a75c6..71bf1e316dd2 100644 --- a/dev-libs/protobuf/protobuf-30.2.ebuild +++ b/dev-libs/protobuf/protobuf-30.2.ebuild @@ -49,7 +49,13 @@ COMMON_DEPEND=" DEPEND=" ${COMMON_DEPEND} conformance? ( dev-libs/jsoncpp[${MULTILIB_USEDEP}] ) - test? ( dev-cpp/gtest[${MULTILIB_USEDEP}] ) + test? ( + || ( + dev-cpp/abseil-cpp[test-helpers(-)] + dev-cpp/abseil-cpp[test] + ) + dev-cpp/gtest[${MULTILIB_USEDEP}] + ) " RDEPEND=" ${COMMON_DEPEND} diff --git a/dev-libs/protobuf/protobuf-9999.ebuild b/dev-libs/protobuf/protobuf-9999.ebuild index b100f58a75c6..71bf1e316dd2 100644 --- a/dev-libs/protobuf/protobuf-9999.ebuild +++ b/dev-libs/protobuf/protobuf-9999.ebuild @@ -49,7 +49,13 @@ COMMON_DEPEND=" DEPEND=" ${COMMON_DEPEND} conformance? ( dev-libs/jsoncpp[${MULTILIB_USEDEP}] ) - test? ( dev-cpp/gtest[${MULTILIB_USEDEP}] ) + test? ( + || ( + dev-cpp/abseil-cpp[test-helpers(-)] + dev-cpp/abseil-cpp[test] + ) + dev-cpp/gtest[${MULTILIB_USEDEP}] + ) " RDEPEND=" ${COMMON_DEPEND}