summaryrefslogtreecommitdiff
path: root/net-libs/ignition-transport
diff options
context:
space:
mode:
Diffstat (limited to 'net-libs/ignition-transport')
-rw-r--r--net-libs/ignition-transport/Manifest5
-rw-r--r--net-libs/ignition-transport/files/protobuf.patch76
-rw-r--r--net-libs/ignition-transport/ignition-transport-8.4.0.ebuild (renamed from net-libs/ignition-transport/ignition-transport-8.3.0.ebuild)3
3 files changed, 81 insertions, 3 deletions
diff --git a/net-libs/ignition-transport/Manifest b/net-libs/ignition-transport/Manifest
index 178d0ece1dae..7e28f90e89e4 100644
--- a/net-libs/ignition-transport/Manifest
+++ b/net-libs/ignition-transport/Manifest
@@ -1,3 +1,4 @@
-DIST ignition-transport8_8.3.0.tar.gz 607354 BLAKE2B f6d9213824fe8bd870968762173022cbd9196809574f9c16de625a75e903c883625f27faaf95fad5aa876e8cd2822f082b3dff7e3bd8c90e70766c2073aa19dd SHA512 120e9e7aea50e7f83d854c1ba61696ddf559db000f9d81ebfcad35db6752c1b5b6319163bd35080f5ccd5d2af928734dc836124c065dd77fd4076aedfb569ea4
-EBUILD ignition-transport-8.3.0.ebuild 765 BLAKE2B 9ebf0cc15b0691c1f6955d8323074536ddcf58d0b7a9d29aee27dc78bca1321afddfc7bc0420015ced34052c1623548402ba6a435e1586026e89ab3b9451602c SHA512 87f7179aab3eee2092e22ab9117f89c7a2ed1847562fc9ee0a2580b64f0268569b19fb2e9bdb1fd2bb81c03fa787df458d6bd4a494fc70919f7874eb0c38f974
+AUX protobuf.patch 2777 BLAKE2B 80a57a03e4dbcabaa810f9c8a90f47e29f22e869367ea71fc2d8c4e80e7d3d9eac8fd3592a868a7a247e84954105c271f4302f1a60cae7331465ff322d2af151 SHA512 e96636f7f85ad92fcb24d0b30469d7ba4fec56f41d9c2be5004c3155f7c9541d0300ddff0815ff91a34aab29f488c1fe488d06f456ed16d3334d9181f8f733f8
+DIST ignition-transport8_8.4.0.tar.gz 610048 BLAKE2B 82ece18d0777d8ca4f64d3b5c37a8532f3a1d067772303f4373e663a99e95573f8991db465a2d6d86606c8565d2af667c96f2ecf7a8dca032c5ab2d7888e7ea4 SHA512 7ed3d59b707f2d1b26bf80dfa7cc9633d4ce5a39b97c5396012e73bd949859ad3b71f79b8aa025ca78f5c1796bfdc9006c1c704f1b6b75e854ffcfc4c3ab53f8
+EBUILD ignition-transport-8.4.0.ebuild 806 BLAKE2B 3690f63528045dcda2ca900d774b3693aeae3edc5b524089a88a93a705c7eadab51c248cfd6afe8d4bed1d41fc5ff1a4b178b96d7496c24c37eaee7943025371 SHA512 f74e8270be59651294522f55e25f1a739720717e842842462e3dd8c13465080d5ede083b0c74fb5f35ce762d806393ca284aa0b91af4740acab57b78ec85fd3f
MISC metadata.xml 244 BLAKE2B 5a5426f4a80c61e49915e23ab7298bd1e53d89bd5361ad61fdaa3a50c88e7f27ea69205fd8c407addfdfde991e10cbe70aa554bfd737daf9d3d639c4eddd5934 SHA512 052b13f84da2d92069cdab006492e4b72274519bae5081f01ee4605215c7dca16bade6fa3856a7fec9435d1b564e607c9c52e0f9fdf199363af330778bf6c0af
diff --git a/net-libs/ignition-transport/files/protobuf.patch b/net-libs/ignition-transport/files/protobuf.patch
new file mode 100644
index 000000000000..497da899db7a
--- /dev/null
+++ b/net-libs/ignition-transport/files/protobuf.patch
@@ -0,0 +1,76 @@
+From e35a697b619dbcecec0ae0c8b8f0a644d368abf3 Mon Sep 17 00:00:00 2001
+From: Silvio Traversaro <silvio@traversaro.it>
+Date: Tue, 6 Jun 2023 17:19:49 +0200
+Subject: [PATCH] Fix compatibility with protobuf 22
+
+Signed-off-by: Silvio Traversaro <silvio@traversaro.it>
+---
+ CMakeLists.txt | 2 --
+ include/gz/transport/RepHandler.hh | 8 ++++++--
+ include/gz/transport/SubscriptionHandler.hh | 6 ++++--
+ 3 files changed, 10 insertions(+), 6 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 5e3aab859..843fb17cb 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -38,9 +38,7 @@ message(STATUS "\n\n-- ====== Finding Dependencies ======")
+
+ #--------------------------------------
+ # Find Protobuf
+-set(REQ_PROTOBUF_VER 3)
+ ign_find_package(IgnProtobuf
+- VERSION ${REQ_PROTOBUF_VER}
+ REQUIRED
+ PRETTY Protobuf)
+
+diff --git a/include/gz/transport/RepHandler.hh b/include/gz/transport/RepHandler.hh
+index 5d27f98c1..a5675fca7 100644
+--- a/include/gz/transport/RepHandler.hh
++++ b/include/gz/transport/RepHandler.hh
+@@ -26,7 +26,7 @@
+ #pragma warning(pop)
+ #endif
+
+-#if GOOGLE_PROTOBUF_VERSION > 2999999
++#if GOOGLE_PROTOBUF_VERSION > 2999999 && GOOGLE_PROTOBUF_VERSION < 4022000
+ #include <google/protobuf/stubs/casts.h>
+ #endif
+
+@@ -140,7 +140,11 @@ namespace ignition
+ return false;
+ }
+
+-#if GOOGLE_PROTOBUF_VERSION > 2999999
++#if GOOGLE_PROTOBUF_VERSION >= 4022000
++ auto msgReq =
++ google::protobuf::internal::DownCast<const Req*>(&_msgReq);
++ auto msgRep = google::protobuf::internal::DownCast<Rep*>(&_msgRep);
++#elif GOOGLE_PROTOBUF_VERSION > 2999999
+ auto msgReq = google::protobuf::down_cast<const Req*>(&_msgReq);
+ auto msgRep = google::protobuf::down_cast<Rep*>(&_msgRep);
+ #else
+diff --git a/include/gz/transport/SubscriptionHandler.hh b/include/gz/transport/SubscriptionHandler.hh
+index 78477add0..d69c83ddb 100644
+--- a/include/gz/transport/SubscriptionHandler.hh
++++ b/include/gz/transport/SubscriptionHandler.hh
+@@ -28,7 +28,7 @@
+
+ #include <google/protobuf/stubs/common.h>
+
+-#if GOOGLE_PROTOBUF_VERSION >= 3000000
++#if GOOGLE_PROTOBUF_VERSION >= 3000000 && GOOGLE_PROTOBUF_VERSION < 4022000
+ #include <google/protobuf/stubs/casts.h>
+ #endif
+
+@@ -211,7 +211,9 @@ namespace ignition
+ if (!this->UpdateThrottling())
+ return true;
+
+-#if GOOGLE_PROTOBUF_VERSION >= 3000000
++#if GOOGLE_PROTOBUF_VERSION >= 4022000
++ auto msgPtr = google::protobuf::internal::DownCast<const T*>(&_msg);
++#elif GOOGLE_PROTOBUF_VERSION >= 3000000
+ auto msgPtr = google::protobuf::down_cast<const T*>(&_msg);
+ #else
+ auto msgPtr = google::protobuf::internal::down_cast<const T*>(&_msg);
diff --git a/net-libs/ignition-transport/ignition-transport-8.3.0.ebuild b/net-libs/ignition-transport/ignition-transport-8.4.0.ebuild
index dd2ad51efb98..1661b79abf05 100644
--- a/net-libs/ignition-transport/ignition-transport-8.3.0.ebuild
+++ b/net-libs/ignition-transport/ignition-transport-8.4.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -30,3 +30,4 @@ BDEPEND="
virtual/pkgconfig"
CMAKE_BUILD_TYPE=RelWithDebInfo
S="${WORKDIR}/gz-transport-ignition-transport8_${PV}"
+PATCHES=( "${FILESDIR}/protobuf.patch" )