summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--meta-oe/recipes-devtools/protobuf/protobuf-c/protobuf3-compatibility.patch55
-rw-r--r--meta-oe/recipes-devtools/protobuf/protobuf-c_1.3.1.bb4
2 files changed, 58 insertions, 1 deletions
diff --git a/meta-oe/recipes-devtools/protobuf/protobuf-c/protobuf3-compatibility.patch b/meta-oe/recipes-devtools/protobuf/protobuf-c/protobuf3-compatibility.patch
new file mode 100644
index 0000000000..35914952db
--- /dev/null
+++ b/meta-oe/recipes-devtools/protobuf/protobuf-c/protobuf3-compatibility.patch
@@ -0,0 +1,55 @@
1From 7456d1621223d425b8a3fd74e435a79c046169fb Mon Sep 17 00:00:00 2001
2From: Robert Edmonds <edmonds@users.noreply.github.com>
3Date: Wed, 10 Apr 2019 20:47:48 -0400
4Subject: [PATCH] t/generated-code2/cxx-generate-packed-data.cc: Fix build
5 failure on newer protobuf
6
7 Upstream-Status: Backport [https://github.com/protobuf-c/protobuf-c/pull/369]
8
9google::protobuf::Message::Reflection has been removed in newer versions
10of protobuf. The replacement is google::protobuf::Reflection.
11
12protobuf in commit 779f61c6a3ce02a119e28e802f229e61b69b9046 ("Integrate
13recent changes from google3.", from August 2008) changed the following
14in message.h:
15
16 @@ -336,7 +337,8 @@ class LIBPROTOBUF_EXPORT Message {
17
18 // Introspection ---------------------------------------------------
19
20 - class Reflection; // Defined below.
21 + // Typedef for backwards-compatibility.
22 + typedef google::protobuf::Reflection Reflection;
23
24The "typedef for backwards-compatibility" apparently lasted ten years
25until protobuf commit 6bbe197e9c1b6fc38cbdc45e3bf83fa7ced792a3
26("Down-integrate from google3.", from August 2018) which finally removed
27the typedef:
28
29 @@ -327,8 +344,6 @@ class LIBPROTOBUF_EXPORT Message : public MessageLite {
30
31 // Introspection ---------------------------------------------------
32
33 - // Typedef for backwards-compatibility.
34 - typedef google::protobuf::Reflection Reflection;
35
36This commit updates the only use of this typedef (in the test suite) to
37directly refer to the replacement, google::protobuf::Reflection. This
38fixes the build failure in the test suite.
39---
40 t/generated-code2/cxx-generate-packed-data.cc | 2 +-
41 1 file changed, 1 insertion(+), 1 deletion(-)
42
43diff --git a/t/generated-code2/cxx-generate-packed-data.cc b/t/generated-code2/cxx-generate-packed-data.cc
44index 4fd3e25..0865d2e 100644
45--- a/t/generated-code2/cxx-generate-packed-data.cc
46+++ b/t/generated-code2/cxx-generate-packed-data.cc
47@@ -998,7 +998,7 @@ static void dump_test_packed_repeated_enum (void)
48 static void dump_test_unknown_fields (void)
49 {
50 EmptyMess mess;
51- const google::protobuf::Message::Reflection *reflection = mess.GetReflection();
52+ const google::protobuf::Reflection *reflection = mess.GetReflection();
53 google::protobuf::UnknownFieldSet *fs = reflection->MutableUnknownFields(&mess);
54
55 #if GOOGLE_PROTOBUF_VERSION >= 2001000
diff --git a/meta-oe/recipes-devtools/protobuf/protobuf-c_1.3.1.bb b/meta-oe/recipes-devtools/protobuf/protobuf-c_1.3.1.bb
index 7ef0300925..1d17823063 100644
--- a/meta-oe/recipes-devtools/protobuf/protobuf-c_1.3.1.bb
+++ b/meta-oe/recipes-devtools/protobuf/protobuf-c_1.3.1.bb
@@ -15,7 +15,9 @@ DEPENDS = "protobuf-native protobuf"
15PV .= "+git${SRCPV}" 15PV .= "+git${SRCPV}"
16SRCREV = "269771b4b45d3aba04e59569f53600003db8d9ff" 16SRCREV = "269771b4b45d3aba04e59569f53600003db8d9ff"
17 17
18SRC_URI = "git://github.com/protobuf-c/protobuf-c.git" 18SRC_URI = "git://github.com/protobuf-c/protobuf-c.git \
19 file://protobuf3-compatibility.patch \
20 "
19 21
20S = "${WORKDIR}/git" 22S = "${WORKDIR}/git"
21 23