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
 }
 

Reply via email to