From 6a7029e0f7370d4d5dfe9e31cc2719a870482392 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sat, 15 Jun 2024 00:09:17 +0100 Subject: gentoo auto-resync : 15:06:2024 - 00:09:17 --- dev-libs/protobuf/Manifest | 3 +- ...buf-23.3-messages_lite-template-instances.patch | 66 ++++++++++++ dev-libs/protobuf/protobuf-23.3-r3.ebuild | 115 -------------------- dev-libs/protobuf/protobuf-23.3-r4.ebuild | 116 +++++++++++++++++++++ 4 files changed, 184 insertions(+), 116 deletions(-) create mode 100644 dev-libs/protobuf/files/protobuf-23.3-messages_lite-template-instances.patch delete mode 100644 dev-libs/protobuf/protobuf-23.3-r3.ebuild create mode 100644 dev-libs/protobuf/protobuf-23.3-r4.ebuild (limited to 'dev-libs/protobuf') diff --git a/dev-libs/protobuf/Manifest b/dev-libs/protobuf/Manifest index 7b52842d2cb6..7b8717453c87 100644 --- a/dev-libs/protobuf/Manifest +++ b/dev-libs/protobuf/Manifest @@ -4,6 +4,7 @@ AUX protobuf-21.9-disable-32-bit-tests.patch 5942 BLAKE2B dcc1d5474c704358287a50 AUX protobuf-22.5-Use-the-same-ABI-for-static-and-shared-libraries-on-.patch 4737 BLAKE2B e5e5d1fcf16f3e33b0ee6d83452cf471b9460e74b2d9152407ff140af3fe891c46a3592a55426234898d812594abc5af55bd356e1357043bf60932fc05620dd9 SHA512 93f9982bd2d92a4e222a2a1e596e044462b838062e941d7bf18d4ce4518b32f2b736ca5551aec59a46c321f3359a78d0e0a94728af7151387eb6d626e9d04d02 AUX protobuf-22.5-fix-missing-PROTOBUF_EXPORT-for-public-symbols.patch 1188 BLAKE2B a09cd3beabcab37449b1c7ac03f9aa11d7f1f85f07b1149a04bf3b77c6c3e0a71e5345288178a1235f41fb57817880d1cd6d67e40769f9793214b6411a6ed4d6 SHA512 798f5edbb5e81c26b4216412fdc6d3cf1ffbac4936713e909e1cbd04e5a7be7187d456bf91c48e6ba0593235226be2ce843304058acd38d1907208bc0c323378 AUX protobuf-23.3-disable-32-bit-tests.patch 1261 BLAKE2B 95adb955991b3c181e15c985996d1d136bc6586a885987c526b3f83feb4afad7553e585f4281fd0928913284cc9251fce089ab79400af3a3e9e75f31db5c8e9c SHA512 42d3121c215190c249dfd0b9e8e2ca59d49fce73a49f113b958d7b7f73708ee758bbeff2dbdbdf1c744352b7f49caab6fb4acd806089b37cf8690dc3cb298289 +AUX protobuf-23.3-messages_lite-template-instances.patch 3385 BLAKE2B 35ce706c808ec4c11466f7ef54ccf88c311ac3ef8307976c5f2889b8171d1ea869f25ea5fb6476a2ec5c485ddc3a30feb73ecfb812e1871d6b2129dce8785e47 SHA512 4326ff0a39ab96b208fe6a6e6b29fd0bf6709ad4260545189a2472ddeb9572c032eba849e757dc28cc9a089843bff902caa030eb0d997ef16ee489ad4ff8f06e AUX protobuf-23.3-static_assert-failure.patch 529 BLAKE2B 69452cf44106fdd7295bbb8d97011309c160f51fb30c233b9549d955d57c0a188b407b97ea7de7dc708a145bf76d5f15f1332bf641541a8830db96705a071701 SHA512 291d8cd318a0324e58c5dc83273ca67b55fd1446bd5111e3caaa9e2b08e3a2565de8030050df6555f300f7051668f5b8918e52009f826a653bb70f9931f12ebd AUX protobuf-26.1-disable-32-bit-tests.patch 1382 BLAKE2B ef85af7bf53c3ea2876e7a4a51dff56e7ac2665a36dad61eba91e8e864f22e10dd055eb8b4b8e03d17b53d45585f064676eae6bb893f10bd95cdccc604f9fe9e SHA512 ac6ab37d852d9ebcaa1f2f21ec7eaa70d44a45e15f9e3d2f7faa35646e61f3222897c2d77e23ff655cc0e2e48ffb420f9bf54113d8d8ab1b985ed8a2b6defb1b AUX protobuf-3.19.0-disable_no-warning-test.patch 1620 BLAKE2B e4f324ed59b2c31662cc625e9d3f1fdb20ee2a25769dbf86093e5000f73a01e11f05459989aaefeaf0414648cd52f1f1025b9d4f1423cdca4844e42e96f54836 SHA512 8c4bc72976a7eb3418b51e7a1c45b49d7ffaeb91a86f440008e6f162773b1db7afed4a6ae1d0b3510d49361c369b6552a9ba4976d104d804d825227aa7113d95 @@ -17,6 +18,6 @@ DIST protobuf-26.1.tar.gz 5957903 BLAKE2B 1a7faab2f56aa0995801a80f73a812c7fc38a0 EBUILD protobuf-21.12.ebuild 2504 BLAKE2B b90c7eb65835f98825faf41fb70b7edcd40030c5c430be7faf13308a74cbc3576a910b83a73dcf593ebb248392900536b96152ba18d05f532b0632ad637b2ad8 SHA512 454f7104106edd5cbc9c1897cdc57fcef337fef51239d5e8832064a9a049b238bb3d4d549df88369098b26a350b4828131ecda74a65c832cf4aa9b1128445d7b EBUILD protobuf-21.9.ebuild 4169 BLAKE2B 26d7458698701fc08d93a7fde27933b34d39975ae403531af31a7dfd8471e2ca20d9f471875ba15a88388616c353bb7b6fd29ed1a6d4b94391fccee2f448d4c5 SHA512 32699153aaf64ece98cd694826b6ba01e32af8a278143e8dacbe05a9eb23f37017a40807247eb1809a5be5e6300a922c8758f3e53be166a1d2e5d48735a63fad EBUILD protobuf-22.5-r1.ebuild 3100 BLAKE2B 61d746f3ee129f4344f171084cb1d7a4891bdc1d44aa2b33f514ae13a58e8b22fe75a98957f4d7c17fe10c8c29ccf7c69415de2198ae9226394e6f47c1a93b26 SHA512 f89421853764065671682b05e1f37fc7e5ecbccc46a9e7ff70b24712645254dd67a6174915ba691f43c76f6122bf4246a556016f2f60b7cf5e30834245ce3e83 -EBUILD protobuf-23.3-r3.ebuild 2836 BLAKE2B 92e4e24235b2c86f80f3de3ddcf4cde083ad2a0b4fa47fb4ee249034faf44a9e76b104bd7458295122176608c3b5134d31dccc7b89c10a5484360f8a6af1bbac SHA512 b89de6ad87fdca2f3bf6d51796bfd43723ba82e2ef386205786c8390ca8dc6272441518ce805a54d75de638b4dbd18838e79a3f8fb2fd1d05765238479257035 +EBUILD protobuf-23.3-r4.ebuild 2901 BLAKE2B 6e3b36136fc9a37d1349efd84e955da65b1399cd8da8f603394dd10c7af1ff2feee596ba30b1c26c068ad15ebd674b16a85e6e6cf50afa3b999c84e2e5fdd970 SHA512 744c5db97325607eed51a90dd0c24813cb53ed599cba7dcb0e6556f88f62defe24fbae652a29f87056c13c9fd111c1643b513c1a1114159cf618628419ec67fa EBUILD protobuf-26.1-r1.ebuild 2722 BLAKE2B 2b4a648933fe23621fdbc67d5a6a7783d7716c1f4cbf72eec5292c3f87006a426a7444744a83d77700e94c2b411c0b5c1983cb1bb1dedd4fe8e4b3ea58b8452b SHA512 7b8cfc2fa64f4dd633ad93da7428ffaeae2cef9aea78f7032c5506abad91ab8f2da91a5598eab47f065419210686afc2a54bc49b3edbaa2801d419857de810e4 MISC metadata.xml 380 BLAKE2B 5f2f89127d56c14c18bc9ae1957bea29c56ff6663060ea7408842a9b17504418a363fafc93bdb75db5d308c08b5706d4325a5a37c517f29e3ff70a7a8d4a21c7 SHA512 e6f4bbba0b3cf42667a27900c517b2dfff7538b397347adc2a7a9e7b6b55dcc95f6469f85feed795fe02b41dd7adde0e3e40e9f313b978d9a2f60a3522ed1efe diff --git a/dev-libs/protobuf/files/protobuf-23.3-messages_lite-template-instances.patch b/dev-libs/protobuf/files/protobuf-23.3-messages_lite-template-instances.patch new file mode 100644 index 000000000000..3869ad95993c --- /dev/null +++ b/dev-libs/protobuf/files/protobuf-23.3-messages_lite-template-instances.patch @@ -0,0 +1,66 @@ +https://bugs.gentoo.org/917046 +https://github.com/protocolbuffers/protobuf/commit/e6f8b9d1026996f6463d4f014d7760256b757227 + +From e6f8b9d1026996f6463d4f014d7760256b757227 Mon Sep 17 00:00:00 2001 +From: Protobuf Team Bot +Date: Wed, 8 Nov 2023 09:20:10 -0800 +Subject: [PATCH] message_lite.h: Use PROTOBUF_EXPORT_TEMPLATE_DECLARE with + extern template + +Export extern templates in message_lite.h to avoid missing symbols when +linking protobuf-lite.so. + +PiperOrigin-RevId: 580556084 +--- a/src/google/protobuf/message_lite.h ++++ b/src/google/protobuf/message_lite.h +@@ -616,22 +616,22 @@ namespace internal { + template + bool MergeFromImpl(absl::string_view input, MessageLite* msg, + MessageLite::ParseFlags parse_flags); +-extern template bool MergeFromImpl(absl::string_view input, +- MessageLite* msg, +- MessageLite::ParseFlags parse_flags); +-extern template bool MergeFromImpl(absl::string_view input, +- MessageLite* msg, +- MessageLite::ParseFlags parse_flags); ++extern template PROTOBUF_EXPORT_TEMPLATE_DECLARE bool MergeFromImpl( ++ absl::string_view input, MessageLite* msg, ++ MessageLite::ParseFlags parse_flags); ++extern template PROTOBUF_EXPORT_TEMPLATE_DECLARE bool MergeFromImpl( ++ absl::string_view input, MessageLite* msg, ++ MessageLite::ParseFlags parse_flags); + + template + bool MergeFromImpl(io::ZeroCopyInputStream* input, MessageLite* msg, + MessageLite::ParseFlags parse_flags); +-extern template bool MergeFromImpl(io::ZeroCopyInputStream* input, +- MessageLite* msg, +- MessageLite::ParseFlags parse_flags); +-extern template bool MergeFromImpl(io::ZeroCopyInputStream* input, +- MessageLite* msg, +- MessageLite::ParseFlags parse_flags); ++extern template PROTOBUF_EXPORT_TEMPLATE_DECLARE bool MergeFromImpl( ++ io::ZeroCopyInputStream* input, MessageLite* msg, ++ MessageLite::ParseFlags parse_flags); ++extern template PROTOBUF_EXPORT_TEMPLATE_DECLARE bool MergeFromImpl( ++ io::ZeroCopyInputStream* input, MessageLite* msg, ++ MessageLite::ParseFlags parse_flags); + + struct BoundedZCIS { + io::ZeroCopyInputStream* zcis; +@@ -641,10 +641,10 @@ struct BoundedZCIS { + template + bool MergeFromImpl(BoundedZCIS input, MessageLite* msg, + MessageLite::ParseFlags parse_flags); +-extern template bool MergeFromImpl(BoundedZCIS input, MessageLite* msg, +- MessageLite::ParseFlags parse_flags); +-extern template bool MergeFromImpl(BoundedZCIS input, MessageLite* msg, +- MessageLite::ParseFlags parse_flags); ++extern template PROTOBUF_EXPORT_TEMPLATE_DECLARE bool MergeFromImpl( ++ BoundedZCIS input, MessageLite* msg, MessageLite::ParseFlags parse_flags); ++extern template PROTOBUF_EXPORT_TEMPLATE_DECLARE bool MergeFromImpl( ++ BoundedZCIS input, MessageLite* msg, MessageLite::ParseFlags parse_flags); + + template + struct SourceWrapper; + diff --git a/dev-libs/protobuf/protobuf-23.3-r3.ebuild b/dev-libs/protobuf/protobuf-23.3-r3.ebuild deleted file mode 100644 index 6ef5f8f482f1..000000000000 --- a/dev-libs/protobuf/protobuf-23.3-r3.ebuild +++ /dev/null @@ -1,115 +0,0 @@ -# Copyright 2008-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit cmake-multilib elisp-common toolchain-funcs - -if [[ "${PV}" == *9999 ]]; then - inherit git-r3 - - EGIT_REPO_URI="https://github.com/protocolbuffers/protobuf.git" - EGIT_SUBMODULES=() -else - SRC_URI="https://github.com/protocolbuffers/protobuf/archive/v${PV}.tar.gz -> ${P}.tar.gz" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~mips ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos" -fi - -DESCRIPTION="Google's Protocol Buffers - Extensible mechanism for serializing structured data" -HOMEPAGE="https://protobuf.dev/" - -LICENSE="BSD" -SLOT="0/$(ver_cut 1-2).0" -IUSE="emacs examples test zlib" -RESTRICT="!test? ( test )" - -BDEPEND="emacs? ( app-editors/emacs:* )" -DEPEND=" - =dev-cpp/abseil-cpp-20230125.3:=[${MULTILIB_USEDEP}] - zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] ) - test? ( >=dev-cpp/gtest-1.9[${MULTILIB_USEDEP}] ) -" -RDEPEND=" - =dev-cpp/abseil-cpp-20230125.3:=[${MULTILIB_USEDEP}] - emacs? ( app-editors/emacs:* ) - zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] ) -" - -PATCHES=( - "${FILESDIR}/${PN}-23.3-disable-32-bit-tests.patch" - "${FILESDIR}/${PN}-23.3-static_assert-failure.patch" -) - -DOCS=( CONTRIBUTORS.txt README.md ) - -src_configure() { - if tc-ld-is-gold; then - # https://sourceware.org/bugzilla/show_bug.cgi?id=24527 - tc-ld-disable-gold - fi - - cmake-multilib_src_configure -} - -multilib_src_configure() { - local mycmakeargs=( - -Dprotobuf_DISABLE_RTTI=ON - -Dprotobuf_BUILD_EXAMPLES=$(usex examples) - -Dprotobuf_WITH_ZLIB=$(usex zlib) - -Dprotobuf_BUILD_TESTS=$(usex test) - -Dprotobuf_ABSL_PROVIDER=package - ) - use test && mycmakeargs+=(-Dprotobuf_USE_EXTERNAL_GTEST=ON) - - cmake_src_configure -} - -src_compile() { - cmake-multilib_src_compile - - if use emacs; then - elisp-compile editors/protobuf-mode.el - fi -} - -src_test() { - local -x srcdir="${S}"/src - cmake-multilib_src_test -} - -multilib_src_install_all() { - find "${ED}" -name "*.la" -delete || die - - if [[ ! -f "${ED}/usr/$(get_libdir)/libprotobuf.so.${SLOT#*/}" ]]; then - eerror "No matching library found with SLOT variable, currently set: ${SLOT}\n" \ - "Expected value: ${ED}/usr/$(get_libdir)/libprotobuf.so.${SLOT#*/}" - die "Please update SLOT variable" - fi - - insinto /usr/share/vim/vimfiles/syntax - doins editors/proto.vim - insinto /usr/share/vim/vimfiles/ftdetect - doins "${FILESDIR}/proto.vim" - - if use emacs; then - elisp-install ${PN} editors/protobuf-mode.el* - elisp-site-file-install "${FILESDIR}/70${PN}-gentoo.el" - fi - - if use examples; then - DOCS+=(examples) - docompress -x /usr/share/doc/${PF}/examples - fi - - einstalldocs -} - -pkg_postinst() { - use emacs && elisp-site-regen -} - -pkg_postrm() { - use emacs && elisp-site-regen -} diff --git a/dev-libs/protobuf/protobuf-23.3-r4.ebuild b/dev-libs/protobuf/protobuf-23.3-r4.ebuild new file mode 100644 index 000000000000..f44655dc1c74 --- /dev/null +++ b/dev-libs/protobuf/protobuf-23.3-r4.ebuild @@ -0,0 +1,116 @@ +# Copyright 2008-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake-multilib elisp-common toolchain-funcs + +if [[ "${PV}" == *9999 ]]; then + inherit git-r3 + + EGIT_REPO_URI="https://github.com/protocolbuffers/protobuf.git" + EGIT_SUBMODULES=() +else + SRC_URI="https://github.com/protocolbuffers/protobuf/archive/v${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~mips ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos" +fi + +DESCRIPTION="Google's Protocol Buffers - Extensible mechanism for serializing structured data" +HOMEPAGE="https://protobuf.dev/" + +LICENSE="BSD" +SLOT="0/$(ver_cut 1-2).0" +IUSE="emacs examples test zlib" +RESTRICT="!test? ( test )" + +BDEPEND="emacs? ( app-editors/emacs:* )" +DEPEND=" + =dev-cpp/abseil-cpp-20230125.3:=[${MULTILIB_USEDEP}] + zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] ) + test? ( >=dev-cpp/gtest-1.9[${MULTILIB_USEDEP}] ) +" +RDEPEND=" + =dev-cpp/abseil-cpp-20230125.3:=[${MULTILIB_USEDEP}] + emacs? ( app-editors/emacs:* ) + zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] ) +" + +PATCHES=( + "${FILESDIR}/${PN}-23.3-disable-32-bit-tests.patch" + "${FILESDIR}/${PN}-23.3-static_assert-failure.patch" + "${FILESDIR}/${PN}-23.3-messages_lite-template-instances.patch" +) + +DOCS=( CONTRIBUTORS.txt README.md ) + +src_configure() { + if tc-ld-is-gold; then + # https://sourceware.org/bugzilla/show_bug.cgi?id=24527 + tc-ld-disable-gold + fi + + cmake-multilib_src_configure +} + +multilib_src_configure() { + local mycmakeargs=( + -Dprotobuf_DISABLE_RTTI=ON + -Dprotobuf_BUILD_EXAMPLES=$(usex examples) + -Dprotobuf_WITH_ZLIB=$(usex zlib) + -Dprotobuf_BUILD_TESTS=$(usex test) + -Dprotobuf_ABSL_PROVIDER=package + ) + use test && mycmakeargs+=(-Dprotobuf_USE_EXTERNAL_GTEST=ON) + + cmake_src_configure +} + +src_compile() { + cmake-multilib_src_compile + + if use emacs; then + elisp-compile editors/protobuf-mode.el + fi +} + +src_test() { + local -x srcdir="${S}"/src + cmake-multilib_src_test +} + +multilib_src_install_all() { + find "${ED}" -name "*.la" -delete || die + + if [[ ! -f "${ED}/usr/$(get_libdir)/libprotobuf.so.${SLOT#*/}" ]]; then + eerror "No matching library found with SLOT variable, currently set: ${SLOT}\n" \ + "Expected value: ${ED}/usr/$(get_libdir)/libprotobuf.so.${SLOT#*/}" + die "Please update SLOT variable" + fi + + insinto /usr/share/vim/vimfiles/syntax + doins editors/proto.vim + insinto /usr/share/vim/vimfiles/ftdetect + doins "${FILESDIR}/proto.vim" + + if use emacs; then + elisp-install ${PN} editors/protobuf-mode.el* + elisp-site-file-install "${FILESDIR}/70${PN}-gentoo.el" + fi + + if use examples; then + DOCS+=(examples) + docompress -x /usr/share/doc/${PF}/examples + fi + + einstalldocs +} + +pkg_postinst() { + use emacs && elisp-site-regen +} + +pkg_postrm() { + use emacs && elisp-site-regen +} -- cgit v1.2.3