commit: 6d1ae36aca27e8b87868b92f3e2b1ffa61e4a24b Author: Zac Medico <zmedico <AT> gentoo <DOT> org> AuthorDate: Sun May 4 18:16:13 2025 +0000 Commit: Zac Medico <zmedico <AT> gentoo <DOT> org> CommitDate: Sun May 4 18:18:10 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6d1ae36a
dev-util/android-tools: Add patch for latest protobuf Bug: https://bugs.gentoo.org/953774 Signed-off-by: Zac Medico <zmedico <AT> gentoo.org> dev-util/android-tools/android-tools-35.0.2.ebuild | 3 +- .../files/android-tools-35.0.2-protobuf.patch | 36 ++++++++++++++++++++++ 2 files changed, 38 insertions(+), 1 deletion(-) diff --git a/dev-util/android-tools/android-tools-35.0.2.ebuild b/dev-util/android-tools/android-tools-35.0.2.ebuild index 217dee444bed..0f1df4563393 100644 --- a/dev-util/android-tools/android-tools-35.0.2.ebuild +++ b/dev-util/android-tools/android-tools-35.0.2.ebuild @@ -30,7 +30,7 @@ DEPEND=" app-arch/zstd:= dev-cpp/abseil-cpp:= dev-libs/libpcre2:= - <dev-libs/protobuf-30:= + dev-libs/protobuf:= sys-libs/zlib:= >=dev-libs/libusb-1.0.28 >=dev-libs/libfmt-11:= @@ -49,6 +49,7 @@ DOCS=() src_prepare() { eapply "${DISTDIR}/${PN}-31.0.3-no-gtest.patch" + eapply "${FILESDIR}/android-tools-35.0.2-protobuf.patch" cd "${S}/vendor/core" || die eapply "${S}/patches/core/0011-Remove-the-useless-dependency-on-gtest.patch" diff --git a/dev-util/android-tools/files/android-tools-35.0.2-protobuf.patch b/dev-util/android-tools/files/android-tools-35.0.2-protobuf.patch new file mode 100644 index 000000000000..b5b02a27bcca --- /dev/null +++ b/dev-util/android-tools/files/android-tools-35.0.2-protobuf.patch @@ -0,0 +1,36 @@ +From 36c605004ae1c75813181ffe4c59907016aaf9e9 Mon Sep 17 00:00:00 2001 +From: Biswapriyo Nath <[email protected]> +Date: Tue, 22 Apr 2025 15:12:23 +0000 +Subject: [PATCH] extras/libjsonpb: Fix incompatibility with protobuf v30 + +This commit fixes the following compiler error. + +jsonpb.cpp:36:44: error: invalid operands to binary expression ( +'basic_string<char, char_traits<char>, allocator<char>>' and +'internal::DescriptorStringView' (aka 'basic_string_view<char>')) +36 | return std::string(kTypeUrlPrefix) + "/" + message.GetDescriptor()->full_name(); + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +More info here https://protobuf.dev/news/2024-10-02/#descriptor-apis + +Change-Id: I3c76d51dfdfbe013eaa5031e6194bf5edae1be35 +--- + libjsonpb/parse/jsonpb.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/libjsonpb/parse/jsonpb.cpp b/libjsonpb/parse/jsonpb.cpp +index b342c2b..ebd71bf 100644 +--- a/vendor/extras/libjsonpb/parse/jsonpb.cpp ++++ b/vendor/extras/libjsonpb/parse/jsonpb.cpp +@@ -33,7 +33,7 @@ using google::protobuf::util::TypeResolver; + static constexpr char kTypeUrlPrefix[] = "type.googleapis.com"; + + std::string GetTypeUrl(const Message& message) { +- return std::string(kTypeUrlPrefix) + "/" + message.GetDescriptor()->full_name(); ++ return std::string(kTypeUrlPrefix) + "/" + std::string(message.GetDescriptor()->full_name()); + } + + ErrorOr<std::string> MessageToJsonString(const Message& message) { +-- +2.49.0 +
