commit: c022c72762bb6b02bab66a63398a32f865d1a3ec
Author: Paul Zander <negril.nx+gentoo <AT> gmail <DOT> com>
AuthorDate: Sun Dec 8 14:56:44 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Jan 5 20:34:02 2025 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c022c727
dev-libs/protobuf: add 29.2
Signed-off-by: Paul Zander <negril.nx+gentoo <AT> gmail.com>
Signed-off-by: Sam James <sam <AT> gentoo.org>
dev-libs/protobuf/Manifest | 1 +
.../{protobuf-9999.ebuild => protobuf-29.2.ebuild} | 31 +++++++++--------
dev-libs/protobuf/protobuf-9999.ebuild | 39 ++++++++++++++--------
3 files changed, 43 insertions(+), 28 deletions(-)
diff --git a/dev-libs/protobuf/Manifest b/dev-libs/protobuf/Manifest
index b0781706ea8a..92ff8602671f 100644
--- a/dev-libs/protobuf/Manifest
+++ b/dev-libs/protobuf/Manifest
@@ -13,3 +13,4 @@ DIST protobuf-27.4.tar.gz 9156456 BLAKE2B
004427f4923e523bf77298600bf91a8fe4ca8b
DIST protobuf-27.5.tar.gz 9153935 BLAKE2B
08b1b5927188e68ef2ae8ce8cdc6f21c34ee8453f4dfaeb362a7f5a5f0ee5ddc24772e5583ab10fbf193aa43e7fdd316e8fbbe4d066df704aef5469dae01fc8d
SHA512
bb266483b11268c207aa0e8ce76442351a331f30151586714d57ed7c9bae05f09aabf5042b90eac85658f708671ba0b33c64d1c58a91a24c00bbf4f4ffdce1bb
DIST protobuf-28.0.tar.gz 9259114 BLAKE2B
328e09ebffb296d838557ea72a4fc4da8e0ad5f1edfccebcc8ee7c9e0e74d06e5e6dbad741fd89f6a4502c1cb246a973fd60c035ccdbf89700b7baff49e2a65e
SHA512
8745f625ac781f3bbefe9494cbf570143d38aecc1521edef7a52ffb403b8be24df2c71f4f2410b5a5b78a0f3e8a38a7d19be2cf916b1b9125349d2da18262cd1
DIST protobuf-28.3.tar.gz 9256608 BLAKE2B
05162124676abe18300481e9f985fd2cfb09b052d06670a993e79ef02f3daf0d5380b521977ebc2362d4094486151ea285fe1c98a1d2f3799b18a1fa422fdc13
SHA512
a91e175fed7eb01c4240842a5af73a7d3cefccbb10885434bceeb7bc89ab6c56a74912cee290bf46e81d4026f3c9c2b10faad5545816064e215c4bae7908263d
+DIST protobuf-29.2.tar.gz 9348408 BLAKE2B
847798474bc6a76b9badfdbf605e118dece5e321e81242d7fa1bf5f5d17ee05a3d365ec112dc6d861cade97efff8be1d5d04006a5144f613bdb3ff5eacc63b99
SHA512
aeb21773edc3dd92a6c1ba6ccd721cc8a20d61230a5309c75ee3ef19baa554c228a6d1095f191ccc18f10183b646f3140dfe6526f5812bcaa64b7d5260572643
diff --git a/dev-libs/protobuf/protobuf-9999.ebuild
b/dev-libs/protobuf/protobuf-29.2.ebuild
similarity index 89%
copy from dev-libs/protobuf/protobuf-9999.ebuild
copy to dev-libs/protobuf/protobuf-29.2.ebuild
index 30ab416efd86..693b964a1462 100644
--- a/dev-libs/protobuf/protobuf-9999.ebuild
+++ b/dev-libs/protobuf/protobuf-29.2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2008-2024 Gentoo Authors
+# Copyright 2008-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -30,32 +30,29 @@ LICENSE="BSD"
SLOT="0/${MY_SLOT}.0"
IUSE="conformance debug emacs examples +libprotoc libupb +protobuf +protoc
test zlib"
+# Require protobuf for the time being
REQUIRED_USE="
- || (
- libprotoc
- libupb
- protobuf
- protoc
- )
+ protobuf
+ examples? ( protobuf protoc )
+ libprotoc? ( protobuf )
+ libupb? ( protobuf )
+ protoc? ( protobuf )
"
RESTRICT="!test? ( test )"
BDEPEND="
emacs? ( app-editors/emacs:* )
- !protobuf? (
- >=dev-libs/protobuf-${PV}
- )
"
COMMON_DEPEND="
- dev-libs/jsoncpp[${MULTILIB_USEDEP}]
>=dev-cpp/abseil-cpp-${ABSEIL_MIN_VER}:=[${MULTILIB_USEDEP}]
zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] )
"
DEPEND="
${COMMON_DEPEND}
+ conformance? ( dev-libs/jsoncpp[${MULTILIB_USEDEP}] )
test? ( >=dev-cpp/gtest-1.11[${MULTILIB_USEDEP}] )
"
RDEPEND="
@@ -64,7 +61,6 @@ RDEPEND="
"
PATCHES=(
- "${FILESDIR}/${PN}-26.1-disable-32-bit-tests.patch"
"${FILESDIR}/${PN}-23.3-static_assert-failure.patch"
"${FILESDIR}/${PN}-27.4-findJsonCpp.patch"
"${FILESDIR}/${PN}-28.0-disable-test_upb-lto.patch"
@@ -84,7 +80,6 @@ multilib_src_configure() {
-Dprotobuf_JSONCPP_PROVIDER="package"
-Dprotobuf_BUILD_CONFORMANCE="$(usex test "$(usex
conformance)")"
- -Dprotobuf_BUILD_EXAMPLES="$(usex examples)"
-Dprotobuf_BUILD_LIBPROTOC="$(usex libprotoc)"
-Dprotobuf_BUILD_LIBUPB="$(usex libupb)"
-Dprotobuf_BUILD_PROTOBUF_BINARIES="$(usex protobuf)"
@@ -95,13 +90,21 @@ multilib_src_configure() {
-Dprotobuf_DISABLE_RTTI="no"
-Dprotobuf_INSTALL="yes"
- -Dprotobuf_INSTALL_EXAMPLES="$(usex examples)"
-Dprotobuf_TEST_XML_OUTDIR="$(usex test)"
-Dprotobuf_WITH_ZLIB="$(usex zlib)"
-Dprotobuf_VERBOSE="$(usex debug)"
-DCMAKE_MODULE_PATH="${S}/cmake"
)
+ if use protobuf ; then
+ if use examples ; then
+ mycmakeargs+=(
+ -Dprotobuf_BUILD_EXAMPLES="$(usex examples)"
+ -Dprotobuf_INSTALL_EXAMPLES="$(usex examples)"
+ )
+ fi
+ fi
+
use test && mycmakeargs+=( -Dprotobuf_USE_EXTERNAL_GTEST="yes" )
cmake_src_configure
diff --git a/dev-libs/protobuf/protobuf-9999.ebuild
b/dev-libs/protobuf/protobuf-9999.ebuild
index 30ab416efd86..3080cc281d8b 100644
--- a/dev-libs/protobuf/protobuf-9999.ebuild
+++ b/dev-libs/protobuf/protobuf-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2008-2024 Gentoo Authors
+# Copyright 2008-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -30,32 +30,29 @@ LICENSE="BSD"
SLOT="0/${MY_SLOT}.0"
IUSE="conformance debug emacs examples +libprotoc libupb +protobuf +protoc
test zlib"
+# Require protobuf for the time being
REQUIRED_USE="
- || (
- libprotoc
- libupb
- protobuf
- protoc
- )
+ protobuf
+ examples? ( protobuf protoc )
+ libprotoc? ( protobuf )
+ libupb? ( protobuf )
+ protoc? ( protobuf )
"
RESTRICT="!test? ( test )"
BDEPEND="
emacs? ( app-editors/emacs:* )
- !protobuf? (
- >=dev-libs/protobuf-${PV}
- )
"
COMMON_DEPEND="
- dev-libs/jsoncpp[${MULTILIB_USEDEP}]
>=dev-cpp/abseil-cpp-${ABSEIL_MIN_VER}:=[${MULTILIB_USEDEP}]
zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] )
"
DEPEND="
${COMMON_DEPEND}
+ conformance? ( dev-libs/jsoncpp[${MULTILIB_USEDEP}] )
test? ( >=dev-cpp/gtest-1.11[${MULTILIB_USEDEP}] )
"
RDEPEND="
@@ -64,7 +61,6 @@ RDEPEND="
"
PATCHES=(
- "${FILESDIR}/${PN}-26.1-disable-32-bit-tests.patch"
"${FILESDIR}/${PN}-23.3-static_assert-failure.patch"
"${FILESDIR}/${PN}-27.4-findJsonCpp.patch"
"${FILESDIR}/${PN}-28.0-disable-test_upb-lto.patch"
@@ -84,7 +80,6 @@ multilib_src_configure() {
-Dprotobuf_JSONCPP_PROVIDER="package"
-Dprotobuf_BUILD_CONFORMANCE="$(usex test "$(usex
conformance)")"
- -Dprotobuf_BUILD_EXAMPLES="$(usex examples)"
-Dprotobuf_BUILD_LIBPROTOC="$(usex libprotoc)"
-Dprotobuf_BUILD_LIBUPB="$(usex libupb)"
-Dprotobuf_BUILD_PROTOBUF_BINARIES="$(usex protobuf)"
@@ -95,13 +90,21 @@ multilib_src_configure() {
-Dprotobuf_DISABLE_RTTI="no"
-Dprotobuf_INSTALL="yes"
- -Dprotobuf_INSTALL_EXAMPLES="$(usex examples)"
-Dprotobuf_TEST_XML_OUTDIR="$(usex test)"
-Dprotobuf_WITH_ZLIB="$(usex zlib)"
-Dprotobuf_VERBOSE="$(usex debug)"
-DCMAKE_MODULE_PATH="${S}/cmake"
)
+ if use protobuf ; then
+ if use examples ; then
+ mycmakeargs+=(
+ -Dprotobuf_BUILD_EXAMPLES="$(usex examples)"
+ -Dprotobuf_INSTALL_EXAMPLES="$(usex examples)"
+ )
+ fi
+ fi
+
use test && mycmakeargs+=( -Dprotobuf_USE_EXTERNAL_GTEST="yes" )
cmake_src_configure
@@ -127,6 +130,14 @@ src_test() {
multilib_foreach_abi setup_test_env
+ # Do headstands for LTO # 942985
+ local -x GTEST_FILTER
+ GTEST_FILTER="-FileDescriptorSetSource/EncodeDecodeTest*"
+
+ cmake-multilib_src_test
+
+ GTEST_FILTER="${GTEST_FILTER//-/}"
+
cmake-multilib_src_test
}