All of lore.kernel.org
 help / color / mirror / Atom feed
* [oe][meta-oe][PATCH v2 0/2] protobuf: upgrade 3.21.12 -> 4.22.2
@ 2023-03-28  6:42 Xiangyu Chen
  2023-03-28  6:42 ` [oe][meta-oe][PATCH v2 1/2] " Xiangyu Chen
  2023-03-28  6:42 ` [oe][meta-oe][PATCH v2 2/2] protobuf-c: add support of protobuf-4.22.x Xiangyu Chen
  0 siblings, 2 replies; 7+ messages in thread
From: Xiangyu Chen @ 2023-03-28  6:42 UTC (permalink / raw)
  To: raj.khem, openembedded-devel

From: Xiangyu Chen <xiangyu.chen@windriver.com>

The v2[1] patch for upgrading protobuf from 3.21.12 to 4.22.2.
After upgrading the protobuf, the package protobuf-c cannot compile anymore[2] due to the latest version
protobuf is using c++14 and some of API name has been changed, so use another patch to add support of
protobuf latest version in protobuf-c.


Ref:
[1] v1 thread please refer to https://lists.openembedded.org/g/openembedded-devel/message/101784
[2] https://errors.yoctoproject.org/Errors/Details/698756/

Xiangyu Chen (2):
  protobuf: upgrade 3.21.12 -> 4.22.2
  protobuf-c: add support of protobuf-4.22.x

 .../0001-add-support-of-protobuf-4.22.x.patch | 332 ++++++++++++++++++
 .../protobuf/protobuf-c_1.4.1.bb              |   5 +-
 ...e-respect-CXX-LDFLAGS-variables-fix-.patch |  15 +-
 ...protobuf_3.21.12.bb => protobuf_4.22.2.bb} |  11 +-
 4 files changed, 353 insertions(+), 10 deletions(-)
 create mode 100644 meta-oe/recipes-devtools/protobuf/protobuf-c/0001-add-support-of-protobuf-4.22.x.patch
 rename meta-oe/recipes-devtools/protobuf/{protobuf_3.21.12.bb => protobuf_4.22.2.bb} (86%)

-- 
2.34.1



^ permalink raw reply	[flat|nested] 7+ messages in thread

* [oe][meta-oe][PATCH v2 1/2] protobuf: upgrade 3.21.12 -> 4.22.2
  2023-03-28  6:42 [oe][meta-oe][PATCH v2 0/2] protobuf: upgrade 3.21.12 -> 4.22.2 Xiangyu Chen
@ 2023-03-28  6:42 ` Xiangyu Chen
  2023-03-28  7:22   ` Khem Raj
  2023-03-28  6:42 ` [oe][meta-oe][PATCH v2 2/2] protobuf-c: add support of protobuf-4.22.x Xiangyu Chen
  1 sibling, 1 reply; 7+ messages in thread
From: Xiangyu Chen @ 2023-03-28  6:42 UTC (permalink / raw)
  To: raj.khem, openembedded-devel

From: Xiangyu Chen <xiangyu.chen@windriver.com>

Signed-off-by: Xiangyu Chen <xiangyu.chen@windriver.com>
---
 ...efile-respect-CXX-LDFLAGS-variables-fix-.patch | 15 +++++++++------
 .../{protobuf_3.21.12.bb => protobuf_4.22.2.bb}   | 11 ++++++++---
 2 files changed, 17 insertions(+), 9 deletions(-)
 rename meta-oe/recipes-devtools/protobuf/{protobuf_3.21.12.bb => protobuf_4.22.2.bb} (86%)

diff --git a/meta-oe/recipes-devtools/protobuf/protobuf/0001-examples-Makefile-respect-CXX-LDFLAGS-variables-fix-.patch b/meta-oe/recipes-devtools/protobuf/protobuf/0001-examples-Makefile-respect-CXX-LDFLAGS-variables-fix-.patch
index 36c3c597a..7c4bf260e 100644
--- a/meta-oe/recipes-devtools/protobuf/protobuf/0001-examples-Makefile-respect-CXX-LDFLAGS-variables-fix-.patch
+++ b/meta-oe/recipes-devtools/protobuf/protobuf/0001-examples-Makefile-respect-CXX-LDFLAGS-variables-fix-.patch
@@ -30,7 +30,7 @@ Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
  1 file changed, 4 insertions(+), 2 deletions(-)
 
 diff --git a/examples/Makefile b/examples/Makefile
-index 1c7ec8d63..85f591231 100644
+index ef7a4ef58..7206e14e1 100644
 --- a/examples/Makefile
 +++ b/examples/Makefile
 @@ -2,6 +2,8 @@
@@ -42,17 +42,20 @@ index 1c7ec8d63..85f591231 100644
  all: cpp java python
  
  cpp:    add_person_cpp    list_people_cpp
-@@ -40,11 +42,11 @@ protoc_middleman_dart: addressbook.proto
+@@ -41,11 +43,11 @@ protoc_middleman_dart: addressbook.proto
  
  add_person_cpp: add_person.cc protoc_middleman
  	pkg-config --cflags protobuf  # fails if protobuf is not installed
--	c++ -std=c++11 add_person.cc addressbook.pb.cc -o add_person_cpp `pkg-config --cflags --libs protobuf`
-+	$(CXX) $(CXXFLAGS) $(LDFLAGS) ../src/google/protobuf/.libs/timestamp.pb.o $(PROTOBUF) add_person.cc addressbook.pb.cc -o add_person_cpp
+-	c++ -std=c++14 add_person.cc addressbook.pb.cc -o add_person_cpp `pkg-config --cflags --libs protobuf`
++	$(CXX) $(CXXFLAGS) $(LDFLAGS) ../src/google/protobuf/.libs/timestamp.pb.o $(PROTOBUF) add_person.cc addressbook.pb.cc -o add_person_cpp #$(CXX) -std=c++17 $(PROTOBUF) add_person.cc addressbook.pb.cc -o add_person_cpp
  
  list_people_cpp: list_people.cc protoc_middleman
  	pkg-config --cflags protobuf  # fails if protobuf is not installed
--	c++ -std=c++11 list_people.cc addressbook.pb.cc -o list_people_cpp `pkg-config --cflags --libs protobuf`
-+	$(CXX) $(CXXFLAGS) $(LDFLAGS) ../src/google/protobuf/.libs/timestamp.pb.o $(PROTOBUF) list_people.cc addressbook.pb.cc -o list_people_cpp
+-	c++ -std=c++14 list_people.cc addressbook.pb.cc -o list_people_cpp `pkg-config --cflags --libs protobuf`
++	$(CXX) $(CXXFLAGS) $(LDFLAGS) ../src/google/protobuf/.libs/timestamp.pb.o $(PROTOBUF) list_people.cc addressbook.pb.cc -o list_people_cpp #$(CXX) -std=c++17 $(PROTOBUF) list_people.cc addressbook.pb.cc -o list_people_cpp
  
  add_person_dart: add_person.dart protoc_middleman_dart
  
+--
+2.34.1
+
diff --git a/meta-oe/recipes-devtools/protobuf/protobuf_3.21.12.bb b/meta-oe/recipes-devtools/protobuf/protobuf_4.22.2.bb
similarity index 86%
rename from meta-oe/recipes-devtools/protobuf/protobuf_3.21.12.bb
rename to meta-oe/recipes-devtools/protobuf/protobuf_4.22.2.bb
index 343933033..0c6b446dc 100644
--- a/meta-oe/recipes-devtools/protobuf/protobuf_3.21.12.bb
+++ b/meta-oe/recipes-devtools/protobuf/protobuf_4.22.2.bb
@@ -7,12 +7,12 @@ SECTION = "console/tools"
 LICENSE = "BSD-3-Clause"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=37b5762e07f0af8c74ce80a8bda4266b"
 
-DEPENDS = "zlib"
+DEPENDS = "zlib abseil-cpp"
 DEPENDS:append:class-target = " protobuf-native"
 
-SRCREV = "f0dc78d7e6e331b8c6bb2d5283e06aa26883ca7c"
+SRCREV = "81f89d509d6771dcccb619cbe26ac86cec472582"
 
-SRC_URI = "git://github.com/protocolbuffers/protobuf.git;branch=21.x;protocol=https \
+SRC_URI = "gitsm://github.com/protocolbuffers/protobuf.git;branch=22.x;protocol=https \
            file://run-ptest \
            file://0001-examples-Makefile-respect-CXX-LDFLAGS-variables-fix-.patch \
            file://0001-Fix-linking-error-with-ld-gold.patch \
@@ -35,6 +35,7 @@ EXTRA_OECMAKE += "\
     -Dprotobuf_BUILD_LIBPROTOC=ON \
     -Dprotobuf_BUILD_TESTS=OFF \
     -Dprotobuf_BUILD_EXAMPLES=OFF \
+    -Dprotobuf_ABSL_PROVIDER="package" \
 "
 
 TEST_SRC_DIR = "examples"
@@ -52,7 +53,11 @@ do_compile_ptest() {
 	cp ${S}/${TEST_SRC_DIR}/Makefile "${B}/${TEST_SRC_DIR}/"
 	sed -e 's|libdir=|libdir=${PKG_CONFIG_SYSROOT_DIR}|' -i "${B}/${TEST_SRC_DIR}/protobuf.pc"
 	sed -e 's|Cflags:|Cflags: -I${S}/src|' -i "${B}/${TEST_SRC_DIR}/protobuf.pc"
+	sed -e 's|Cflags:|Cflags: -I${WORKDIR}/recipe-sysroot-native${includedir} |' -i "${B}/${TEST_SRC_DIR}/protobuf.pc"
 	sed -e 's|Libs:|Libs: -L${B}|' -i "${B}/${TEST_SRC_DIR}/protobuf.pc"
+	sed -e 's|Libs:|Libs: -L${WORKDIR}/recipe-sysroot-native/usr/lib|' -i "${B}/${TEST_SRC_DIR}/protobuf.pc"
+	sed -e 's|Libs:|Libs: -labsl_log_internal_check_op |' -i "${B}/${TEST_SRC_DIR}/protobuf.pc"
+	sed -e 's|Libs:|Libs: -labsl_log_internal_message |' -i "${B}/${TEST_SRC_DIR}/protobuf.pc"
 	# Until out-of-tree build of examples is supported, we have to use this approach
 	sed -e 's|../src/google/protobuf/.libs/timestamp.pb.o|${B}/CMakeFiles/libprotobuf.dir/src/google/protobuf/timestamp.pb.cc.o|' -i "${B}/${TEST_SRC_DIR}/Makefile"
 	export PKG_CONFIG_PATH="${B}/${TEST_SRC_DIR}"
-- 
2.34.1



^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [oe][meta-oe][PATCH v2 2/2] protobuf-c: add support of protobuf-4.22.x
  2023-03-28  6:42 [oe][meta-oe][PATCH v2 0/2] protobuf: upgrade 3.21.12 -> 4.22.2 Xiangyu Chen
  2023-03-28  6:42 ` [oe][meta-oe][PATCH v2 1/2] " Xiangyu Chen
@ 2023-03-28  6:42 ` Xiangyu Chen
  1 sibling, 0 replies; 7+ messages in thread
From: Xiangyu Chen @ 2023-03-28  6:42 UTC (permalink / raw)
  To: raj.khem, openembedded-devel

From: Xiangyu Chen <xiangyu.chen@windriver.com>

Signed-off-by: Xiangyu Chen <xiangyu.chen@windriver.com>
---
 .../0001-add-support-of-protobuf-4.22.x.patch | 332 ++++++++++++++++++
 .../protobuf/protobuf-c_1.4.1.bb              |   5 +-
 2 files changed, 336 insertions(+), 1 deletion(-)
 create mode 100644 meta-oe/recipes-devtools/protobuf/protobuf-c/0001-add-support-of-protobuf-4.22.x.patch

diff --git a/meta-oe/recipes-devtools/protobuf/protobuf-c/0001-add-support-of-protobuf-4.22.x.patch b/meta-oe/recipes-devtools/protobuf/protobuf-c/0001-add-support-of-protobuf-4.22.x.patch
new file mode 100644
index 000000000..80808273d
--- /dev/null
+++ b/meta-oe/recipes-devtools/protobuf/protobuf-c/0001-add-support-of-protobuf-4.22.x.patch
@@ -0,0 +1,332 @@
+From 0bf2e81d7196fcc5538a82da9da339657b3fae9a Mon Sep 17 00:00:00 2001
+From: Xiangyu Chen <xiangyu.chen@windriver.com>
+Date: Tue, 28 Mar 2023 14:21:53 +0800
+Subject: [PATCH] add support of protobuf 4.22.x
+
+After upgrading the protobuf to  4.22.x, the protobuf-c cannot compile anymore due to following changes: 
+1. protobuf using c++14, that cause the command_line_interface.h report error 
+2. protobuf using abseil-cpp library instead the trace API with GOOGLE_ header
+3. removed GOOGLE_DISALLOW_EVIL_CONSTRUCTORS
+
+Upstream-Status: Pending [https://github.com/protobuf-c/protobuf-c/pull/548]
+
+Signed-off-by: Xiangyu Chen <xiangyu.chen@windriver.com>
+---
+ Makefile.am                   | 2 +-
+ configure.ac                  | 9 +++++----
+ protoc-c/c_bytes_field.h      | 1 -
+ protoc-c/c_enum.h             | 1 -
+ protoc-c/c_enum_field.h       | 1 -
+ protoc-c/c_extension.h        | 1 -
+ protoc-c/c_field.cc           | 2 +-
+ protoc-c/c_field.h            | 3 ---
+ protoc-c/c_file.h             | 1 -
+ protoc-c/c_generator.h        | 2 --
+ protoc-c/c_helpers.cc         | 4 ++--
+ protoc-c/c_message.cc         | 4 ++--
+ protoc-c/c_message.h          | 1 -
+ protoc-c/c_message_field.h    | 3 ---
+ protoc-c/c_primitive_field.cc | 6 +++---
+ protoc-c/c_primitive_field.h  | 3 ---
+ protoc-c/c_service.h          | 1 -
+ protoc-c/c_string_field.h     | 1 -
+ 18 files changed, 14 insertions(+), 32 deletions(-)
+
+diff --git a/Makefile.am b/Makefile.am
+index c7339ef..884b5eb 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -20,7 +20,7 @@ AM_CPPFLAGS = \
+ 	-I${top_builddir} \
+ 	-I${top_srcdir}
+ AM_CFLAGS = ${my_CFLAGS}
+-AM_LDFLAGS =
++AM_LDFLAGS = ${my_LDFLAGS}
+ 
+ # code coverage
+ 
+diff --git a/configure.ac b/configure.ac
+index f5a0261..0717934 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -23,7 +23,7 @@ LT_INIT
+ 
+ AC_CONFIG_HEADERS(config.h)
+ AC_CONFIG_FILES([Makefile protobuf-c/libprotobuf-c.pc])
+-
++my_LDFLAGS=""
+ my_CFLAGS="\
+ -Wall \
+ -Wchar-subscripts \
+@@ -76,11 +76,10 @@ AC_ARG_ENABLE([protoc],
+ if test "x$enable_protoc" != "xno"; then
+   AC_LANG_PUSH([C++])
+ 
+-  AX_CXX_COMPILE_STDCXX(11, noext, mandatory)
++  AX_CXX_COMPILE_STDCXX(14, noext, mandatory)
+ 
+   PKG_CHECK_MODULES([protobuf], [protobuf >= 3.0.0],
+-    [proto3_supported=yes],
+-    [PKG_CHECK_MODULES([protobuf], [protobuf >= 2.6.0])]
++    [my_LDFLAGS="-Wl,--copy-dt-needed-entries"]
+   )
+ 
+   save_CPPFLAGS="$CPPFLAGS"
+@@ -109,6 +108,8 @@ AM_CONDITIONAL([CROSS_COMPILING], [test "x$cross_compiling" != "xno"])
+ 
+ AM_COND_IF([BUILD_PROTO3], [AC_DEFINE([HAVE_PROTO3], [1], [Support proto3 syntax])])
+ 
++AC_SUBST([my_LDFLAGS])
++
+ gl_LD_VERSION_SCRIPT
+ 
+ gl_VALGRIND_TESTS
+diff --git a/protoc-c/c_bytes_field.h b/protoc-c/c_bytes_field.h
+index bf873f0..8fc63d3 100644
+--- a/protoc-c/c_bytes_field.h
++++ b/protoc-c/c_bytes_field.h
+@@ -88,7 +88,6 @@ class BytesFieldGenerator : public FieldGenerator {
+  private:
+   std::map<std::string, std::string> variables_;
+ 
+-  GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(BytesFieldGenerator);
+ };
+ 
+ 
+diff --git a/protoc-c/c_enum.h b/protoc-c/c_enum.h
+index 9c34b69..d5e58f0 100644
+--- a/protoc-c/c_enum.h
++++ b/protoc-c/c_enum.h
+@@ -107,7 +107,6 @@ class EnumGenerator {
+   const EnumDescriptor* descriptor_;
+   std::string dllexport_decl_;
+ 
+-  GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(EnumGenerator);
+ };
+ 
+ }  // namespace c
+diff --git a/protoc-c/c_enum_field.h b/protoc-c/c_enum_field.h
+index 3f8c005..03eb402 100644
+--- a/protoc-c/c_enum_field.h
++++ b/protoc-c/c_enum_field.h
+@@ -86,7 +86,6 @@ class EnumFieldGenerator : public FieldGenerator {
+  private:
+   std::map<std::string, std::string> variables_;
+ 
+-  GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(EnumFieldGenerator);
+ };
+ 
+ 
+diff --git a/protoc-c/c_extension.h b/protoc-c/c_extension.h
+index 9541388..9c5797d 100644
+--- a/protoc-c/c_extension.h
++++ b/protoc-c/c_extension.h
+@@ -99,7 +99,6 @@ class ExtensionGenerator {
+   std::string type_traits_;
+   std::string dllexport_decl_;
+ 
+-  GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(ExtensionGenerator);
+ };
+ 
+ }  // namespace c
+diff --git a/protoc-c/c_field.cc b/protoc-c/c_field.cc
+index 0716744..4abdc6d 100644
+--- a/protoc-c/c_field.cc
++++ b/protoc-c/c_field.cc
+@@ -231,7 +231,7 @@ FieldGeneratorMap::~FieldGeneratorMap() {}
+ 
+ const FieldGenerator& FieldGeneratorMap::get(
+     const FieldDescriptor* field) const {
+-  GOOGLE_CHECK_EQ(field->containing_type(), descriptor_);
++  ABSL_CHECK_EQ(field->containing_type(), descriptor_);
+   return *field_generators_[field->index()];
+ }
+ 
+diff --git a/protoc-c/c_field.h b/protoc-c/c_field.h
+index 3cad35d..76d3b0b 100644
+--- a/protoc-c/c_field.h
++++ b/protoc-c/c_field.h
+@@ -104,8 +104,6 @@ class FieldGenerator {
+                                             const std::string &descriptor_addr) const;
+   const FieldDescriptor *descriptor_;
+ 
+- private:
+-  GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(FieldGenerator);
+ };
+ 
+ // Convenience class which constructs FieldGenerators for a Descriptor.
+@@ -122,7 +120,6 @@ class FieldGeneratorMap {
+ 
+   static FieldGenerator* MakeGenerator(const FieldDescriptor* field);
+ 
+-  GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(FieldGeneratorMap);
+ };
+ 
+ }  // namespace c
+diff --git a/protoc-c/c_file.h b/protoc-c/c_file.h
+index 8dfd8ba..ec55906 100644
+--- a/protoc-c/c_file.h
++++ b/protoc-c/c_file.h
+@@ -104,7 +104,6 @@ class FileGenerator {
+   std::unique_ptr<std::unique_ptr<ServiceGenerator>[]> service_generators_;
+   std::unique_ptr<std::unique_ptr<ExtensionGenerator>[]> extension_generators_;
+ 
+-  GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(FileGenerator);
+ };
+ 
+ }  // namespace c
+diff --git a/protoc-c/c_generator.h b/protoc-c/c_generator.h
+index ac1ffaf..9260116 100644
+--- a/protoc-c/c_generator.h
++++ b/protoc-c/c_generator.h
+@@ -94,8 +94,6 @@ class PROTOC_C_EXPORT CGenerator : public CodeGenerator {
+                 OutputDirectory* output_directory,
+                 std::string* error) const;
+ 
+- private:
+-  GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(CGenerator);
+ };
+ 
+ }  // namespace c
+diff --git a/protoc-c/c_helpers.cc b/protoc-c/c_helpers.cc
+index 6fd0cd3..1eaeeb4 100644
+--- a/protoc-c/c_helpers.cc
++++ b/protoc-c/c_helpers.cc
+@@ -286,7 +286,7 @@ const char* const kKeywordList[] = {
+ 
+ std::set<std::string> MakeKeywordsMap() {
+   std::set<std::string> result;
+-  for (int i = 0; i < GOOGLE_ARRAYSIZE(kKeywordList); i++) {
++  for (int i = 0; i < ABSL_ARRAYSIZE(kKeywordList); i++) {
+     result.insert(kKeywordList[i]);
+   }
+   return result;
+@@ -548,7 +548,7 @@ std::string CEscape(const std::string& src) {
+   std::unique_ptr<char[]> dest(new char[dest_length]);
+   const int len = CEscapeInternal(src.data(), src.size(),
+                                   dest.get(), dest_length, false);
+-  GOOGLE_DCHECK_GE(len, 0);
++  ABSL_DCHECK_GE(len, 0);
+   return std::string(dest.get(), len);
+ }
+ 
+diff --git a/protoc-c/c_message.cc b/protoc-c/c_message.cc
+index 37e8bf8..c7e8515 100755
+--- a/protoc-c/c_message.cc
++++ b/protoc-c/c_message.cc
+@@ -499,7 +499,7 @@ GenerateMessageDescriptor(io::Printer* printer, bool gen_init) {
+ 	  // NOTE: not supported by protobuf
+ 	  vars["maybe_static"] = "";
+ 	  vars["field_dv_ctype"] = "{ ... }";
+-	  GOOGLE_LOG(DFATAL) << "Messages can't have default values!";
++	  ABSL_LOG(FATAL) << "Messages can't have default values!";
+ 	  break;
+ 	case FieldDescriptor::CPPTYPE_STRING:
+ 	  if (fd->type() == FieldDescriptor::TYPE_BYTES || opt.string_as_bytes())
+@@ -521,7 +521,7 @@ GenerateMessageDescriptor(io::Printer* printer, bool gen_init) {
+ 	    break;
+ 	  }
+ 	default:
+-	  GOOGLE_LOG(DFATAL) << "Unknown CPPTYPE";
++	  ABSL_LOG(FATAL) << "Unknown CPPTYPE";
+ 	  break;
+ 	}
+ 	if (!already_defined)
+diff --git a/protoc-c/c_message.h b/protoc-c/c_message.h
+index ea1c3ab..e90782b 100644
+--- a/protoc-c/c_message.h
++++ b/protoc-c/c_message.h
+@@ -137,7 +137,6 @@ class MessageGenerator {
+   std::unique_ptr<std::unique_ptr<EnumGenerator>[]> enum_generators_;
+   std::unique_ptr<std::unique_ptr<ExtensionGenerator>[]> extension_generators_;
+ 
+-  GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(MessageGenerator);
+ };
+ 
+ }  // namespace c
+diff --git a/protoc-c/c_message_field.h b/protoc-c/c_message_field.h
+index 39b8d99..42efe36 100644
+--- a/protoc-c/c_message_field.h
++++ b/protoc-c/c_message_field.h
+@@ -83,9 +83,6 @@ class MessageFieldGenerator : public FieldGenerator {
+   std::string GetDefaultValue(void) const;
+   void GenerateStaticInit(io::Printer* printer) const;
+ 
+- private:
+-
+-  GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(MessageFieldGenerator);
+ };
+ 
+ 
+diff --git a/protoc-c/c_primitive_field.cc b/protoc-c/c_primitive_field.cc
+index 6990893..d5a7b60 100644
+--- a/protoc-c/c_primitive_field.cc
++++ b/protoc-c/c_primitive_field.cc
+@@ -99,7 +99,7 @@ void PrimitiveFieldGenerator::GenerateStructMembers(io::Printer* printer) const
+     case FieldDescriptor::TYPE_STRING  :
+     case FieldDescriptor::TYPE_BYTES   :
+     case FieldDescriptor::TYPE_GROUP   :
+-    case FieldDescriptor::TYPE_MESSAGE : GOOGLE_LOG(FATAL) << "not a primitive type"; break;
++    case FieldDescriptor::TYPE_MESSAGE : ABSL_LOG(FATAL) << "not a primitive type"; break;
+ 
+     // No default because we want the compiler to complain if any new
+     // types are added.
+@@ -143,7 +143,7 @@ std::string PrimitiveFieldGenerator::GetDefaultValue() const
+     case FieldDescriptor::CPPTYPE_BOOL:
+       return descriptor_->default_value_bool() ? "1" : "0";
+     default:
+-      GOOGLE_LOG(DFATAL) << "unexpected CPPTYPE in c_primitive_field";
++      ABSL_LOG(FATAL) << "unexpected CPPTYPE in c_primitive_field";
+       return "UNEXPECTED_CPPTYPE";
+   }
+ }
+@@ -197,7 +197,7 @@ void PrimitiveFieldGenerator::GenerateDescriptorInitializer(io::Printer* printer
+     case FieldDescriptor::TYPE_STRING  :
+     case FieldDescriptor::TYPE_BYTES   :
+     case FieldDescriptor::TYPE_GROUP   :
+-    case FieldDescriptor::TYPE_MESSAGE : GOOGLE_LOG(FATAL) << "not a primitive type"; break;
++    case FieldDescriptor::TYPE_MESSAGE : ABSL_LOG(FATAL) << "not a primitive type"; break;
+ 
+     // No default because we want the compiler to complain if any new
+     // types are added.
+diff --git a/protoc-c/c_primitive_field.h b/protoc-c/c_primitive_field.h
+index a9eb893..d2bb724 100644
+--- a/protoc-c/c_primitive_field.h
++++ b/protoc-c/c_primitive_field.h
+@@ -83,9 +83,6 @@ class PrimitiveFieldGenerator : public FieldGenerator {
+   std::string GetDefaultValue(void) const;
+   void GenerateStaticInit(io::Printer* printer) const;
+ 
+- private:
+-
+-  GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(PrimitiveFieldGenerator);
+ };
+ 
+ }  // namespace c
+diff --git a/protoc-c/c_service.h b/protoc-c/c_service.h
+index 27125a6..4737ff3 100644
+--- a/protoc-c/c_service.h
++++ b/protoc-c/c_service.h
+@@ -101,7 +101,6 @@ class ServiceGenerator {
+   const ServiceDescriptor* descriptor_;
+   std::map<std::string, std::string> vars_;
+ 
+-  GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(ServiceGenerator);
+ };
+ 
+ }  // namespace c
+diff --git a/protoc-c/c_string_field.h b/protoc-c/c_string_field.h
+index 513cea7..ba258e4 100644
+--- a/protoc-c/c_string_field.h
++++ b/protoc-c/c_string_field.h
+@@ -88,7 +88,6 @@ class StringFieldGenerator : public FieldGenerator {
+  private:
+   std::map<std::string, std::string> variables_;
+ 
+-  GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(StringFieldGenerator);
+ };
+ 
+ 
+-- 
+2.34.1
+
diff --git a/meta-oe/recipes-devtools/protobuf/protobuf-c_1.4.1.bb b/meta-oe/recipes-devtools/protobuf/protobuf-c_1.4.1.bb
index d724287d6..bdaf43a54 100644
--- a/meta-oe/recipes-devtools/protobuf/protobuf-c_1.4.1.bb
+++ b/meta-oe/recipes-devtools/protobuf/protobuf-c_1.4.1.bb
@@ -12,7 +12,10 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=9f725889e0d77383e26cb42b0b62cea2"
 
 DEPENDS = "protobuf-native protobuf"
 
-SRC_URI = "git://github.com/protobuf-c/protobuf-c.git;branch=master;protocol=https"
+SRC_URI = "git://github.com/protobuf-c/protobuf-c.git;branch=master;protocol=https \
+           file://0001-add-support-of-protobuf-4.22.x.patch \
+           "
+
 SRCREV = "abc67a11c6db271bedbb9f58be85d6f4e2ea8389"
 
 S = "${WORKDIR}/git"
-- 
2.34.1



^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [oe][meta-oe][PATCH v2 1/2] protobuf: upgrade 3.21.12 -> 4.22.2
  2023-03-28  6:42 ` [oe][meta-oe][PATCH v2 1/2] " Xiangyu Chen
@ 2023-03-28  7:22   ` Khem Raj
  2023-03-28  7:48     ` Xiangyu Chen
       [not found]     ` <175085C237DCAF2E.28404@lists.openembedded.org>
  0 siblings, 2 replies; 7+ messages in thread
From: Khem Raj @ 2023-03-28  7:22 UTC (permalink / raw)
  To: Xiangyu Chen; +Cc: openembedded-devel

it stil fails

Summary: 2 tasks failed:
  virtual:native:/mnt/b/yoe/master/sources/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf-c_1.4.1.bb:do_compile
  /mnt/b/yoe/master/sources/meta-openembedded/meta-oe/recipes-connectivity/mosh/mosh_1.4.0.bb:do_configure
Summary: There were 4 ERROR messages, returning a non-zero exit code.

On Mon, Mar 27, 2023 at 11:43 PM Xiangyu Chen
<xiangyu.chen@eng.windriver.com> wrote:
>
> From: Xiangyu Chen <xiangyu.chen@windriver.com>
>
> Signed-off-by: Xiangyu Chen <xiangyu.chen@windriver.com>
> ---
>  ...efile-respect-CXX-LDFLAGS-variables-fix-.patch | 15 +++++++++------
>  .../{protobuf_3.21.12.bb => protobuf_4.22.2.bb}   | 11 ++++++++---
>  2 files changed, 17 insertions(+), 9 deletions(-)
>  rename meta-oe/recipes-devtools/protobuf/{protobuf_3.21.12.bb => protobuf_4.22.2.bb} (86%)
>
> diff --git a/meta-oe/recipes-devtools/protobuf/protobuf/0001-examples-Makefile-respect-CXX-LDFLAGS-variables-fix-.patch b/meta-oe/recipes-devtools/protobuf/protobuf/0001-examples-Makefile-respect-CXX-LDFLAGS-variables-fix-.patch
> index 36c3c597a..7c4bf260e 100644
> --- a/meta-oe/recipes-devtools/protobuf/protobuf/0001-examples-Makefile-respect-CXX-LDFLAGS-variables-fix-.patch
> +++ b/meta-oe/recipes-devtools/protobuf/protobuf/0001-examples-Makefile-respect-CXX-LDFLAGS-variables-fix-.patch
> @@ -30,7 +30,7 @@ Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
>   1 file changed, 4 insertions(+), 2 deletions(-)
>
>  diff --git a/examples/Makefile b/examples/Makefile
> -index 1c7ec8d63..85f591231 100644
> +index ef7a4ef58..7206e14e1 100644
>  --- a/examples/Makefile
>  +++ b/examples/Makefile
>  @@ -2,6 +2,8 @@
> @@ -42,17 +42,20 @@ index 1c7ec8d63..85f591231 100644
>   all: cpp java python
>
>   cpp:    add_person_cpp    list_people_cpp
> -@@ -40,11 +42,11 @@ protoc_middleman_dart: addressbook.proto
> +@@ -41,11 +43,11 @@ protoc_middleman_dart: addressbook.proto
>
>   add_person_cpp: add_person.cc protoc_middleman
>         pkg-config --cflags protobuf  # fails if protobuf is not installed
> --      c++ -std=c++11 add_person.cc addressbook.pb.cc -o add_person_cpp `pkg-config --cflags --libs protobuf`
> -+      $(CXX) $(CXXFLAGS) $(LDFLAGS) ../src/google/protobuf/.libs/timestamp.pb.o $(PROTOBUF) add_person.cc addressbook.pb.cc -o add_person_cpp
> +-      c++ -std=c++14 add_person.cc addressbook.pb.cc -o add_person_cpp `pkg-config --cflags --libs protobuf`
> ++      $(CXX) $(CXXFLAGS) $(LDFLAGS) ../src/google/protobuf/.libs/timestamp.pb.o $(PROTOBUF) add_person.cc addressbook.pb.cc -o add_person_cpp #$(CXX) -std=c++17 $(PROTOBUF) add_person.cc addressbook.pb.cc -o add_person_cpp
>
>   list_people_cpp: list_people.cc protoc_middleman
>         pkg-config --cflags protobuf  # fails if protobuf is not installed
> --      c++ -std=c++11 list_people.cc addressbook.pb.cc -o list_people_cpp `pkg-config --cflags --libs protobuf`
> -+      $(CXX) $(CXXFLAGS) $(LDFLAGS) ../src/google/protobuf/.libs/timestamp.pb.o $(PROTOBUF) list_people.cc addressbook.pb.cc -o list_people_cpp
> +-      c++ -std=c++14 list_people.cc addressbook.pb.cc -o list_people_cpp `pkg-config --cflags --libs protobuf`
> ++      $(CXX) $(CXXFLAGS) $(LDFLAGS) ../src/google/protobuf/.libs/timestamp.pb.o $(PROTOBUF) list_people.cc addressbook.pb.cc -o list_people_cpp #$(CXX) -std=c++17 $(PROTOBUF) list_people.cc addressbook.pb.cc -o list_people_cpp
>
>   add_person_dart: add_person.dart protoc_middleman_dart
>
> +--
> +2.34.1
> +
> diff --git a/meta-oe/recipes-devtools/protobuf/protobuf_3.21.12.bb b/meta-oe/recipes-devtools/protobuf/protobuf_4.22.2.bb
> similarity index 86%
> rename from meta-oe/recipes-devtools/protobuf/protobuf_3.21.12.bb
> rename to meta-oe/recipes-devtools/protobuf/protobuf_4.22.2.bb
> index 343933033..0c6b446dc 100644
> --- a/meta-oe/recipes-devtools/protobuf/protobuf_3.21.12.bb
> +++ b/meta-oe/recipes-devtools/protobuf/protobuf_4.22.2.bb
> @@ -7,12 +7,12 @@ SECTION = "console/tools"
>  LICENSE = "BSD-3-Clause"
>  LIC_FILES_CHKSUM = "file://LICENSE;md5=37b5762e07f0af8c74ce80a8bda4266b"
>
> -DEPENDS = "zlib"
> +DEPENDS = "zlib abseil-cpp"
>  DEPENDS:append:class-target = " protobuf-native"
>
> -SRCREV = "f0dc78d7e6e331b8c6bb2d5283e06aa26883ca7c"
> +SRCREV = "81f89d509d6771dcccb619cbe26ac86cec472582"
>
> -SRC_URI = "git://github.com/protocolbuffers/protobuf.git;branch=21.x;protocol=https \
> +SRC_URI = "gitsm://github.com/protocolbuffers/protobuf.git;branch=22.x;protocol=https \
>             file://run-ptest \
>             file://0001-examples-Makefile-respect-CXX-LDFLAGS-variables-fix-.patch \
>             file://0001-Fix-linking-error-with-ld-gold.patch \
> @@ -35,6 +35,7 @@ EXTRA_OECMAKE += "\
>      -Dprotobuf_BUILD_LIBPROTOC=ON \
>      -Dprotobuf_BUILD_TESTS=OFF \
>      -Dprotobuf_BUILD_EXAMPLES=OFF \
> +    -Dprotobuf_ABSL_PROVIDER="package" \
>  "
>
>  TEST_SRC_DIR = "examples"
> @@ -52,7 +53,11 @@ do_compile_ptest() {
>         cp ${S}/${TEST_SRC_DIR}/Makefile "${B}/${TEST_SRC_DIR}/"
>         sed -e 's|libdir=|libdir=${PKG_CONFIG_SYSROOT_DIR}|' -i "${B}/${TEST_SRC_DIR}/protobuf.pc"
>         sed -e 's|Cflags:|Cflags: -I${S}/src|' -i "${B}/${TEST_SRC_DIR}/protobuf.pc"
> +       sed -e 's|Cflags:|Cflags: -I${WORKDIR}/recipe-sysroot-native${includedir} |' -i "${B}/${TEST_SRC_DIR}/protobuf.pc"
>         sed -e 's|Libs:|Libs: -L${B}|' -i "${B}/${TEST_SRC_DIR}/protobuf.pc"
> +       sed -e 's|Libs:|Libs: -L${WORKDIR}/recipe-sysroot-native/usr/lib|' -i "${B}/${TEST_SRC_DIR}/protobuf.pc"
> +       sed -e 's|Libs:|Libs: -labsl_log_internal_check_op |' -i "${B}/${TEST_SRC_DIR}/protobuf.pc"
> +       sed -e 's|Libs:|Libs: -labsl_log_internal_message |' -i "${B}/${TEST_SRC_DIR}/protobuf.pc"
>         # Until out-of-tree build of examples is supported, we have to use this approach
>         sed -e 's|../src/google/protobuf/.libs/timestamp.pb.o|${B}/CMakeFiles/libprotobuf.dir/src/google/protobuf/timestamp.pb.cc.o|' -i "${B}/${TEST_SRC_DIR}/Makefile"
>         export PKG_CONFIG_PATH="${B}/${TEST_SRC_DIR}"
> --
> 2.34.1
>


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [oe][meta-oe][PATCH v2 1/2] protobuf: upgrade 3.21.12 -> 4.22.2
  2023-03-28  7:22   ` Khem Raj
@ 2023-03-28  7:48     ` Xiangyu Chen
       [not found]     ` <175085C237DCAF2E.28404@lists.openembedded.org>
  1 sibling, 0 replies; 7+ messages in thread
From: Xiangyu Chen @ 2023-03-28  7:48 UTC (permalink / raw)
  To: Khem Raj; +Cc: openembedded-devel

Hello,


On 3/28/23 15:22, Khem Raj wrote:
> CAUTION: This email comes from a non Wind River email account!
> Do not click links or open attachments unless you recognize the sender and know the content is safe.
>
> it stil fails
>
> Summary: 2 tasks failed:
>    virtual:native:/mnt/b/yoe/master/sources/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf-c_1.4.1.bb:do_compile
>    /mnt/b/yoe/master/sources/meta-openembedded/meta-oe/recipes-connectivity/mosh/mosh_1.4.0.bb:do_configure
> Summary: There were 4 ERROR messages, returning a non-zero exit code.

Could you please help to share the error log with me? thanks.

I applied the protobuf-c related patch cannot reproduce in my local 
setup with "bitbake protobuf-c -c cleanall;bitbake protobuf-c" .


Br,

Xiangyu

>
> On Mon, Mar 27, 2023 at 11:43 PM Xiangyu Chen
> <xiangyu.chen@eng.windriver.com> wrote:
>> From: Xiangyu Chen <xiangyu.chen@windriver.com>
>>
>> Signed-off-by: Xiangyu Chen <xiangyu.chen@windriver.com>
>> ---
>>   ...efile-respect-CXX-LDFLAGS-variables-fix-.patch | 15 +++++++++------
>>   .../{protobuf_3.21.12.bb => protobuf_4.22.2.bb}   | 11 ++++++++---
>>   2 files changed, 17 insertions(+), 9 deletions(-)
>>   rename meta-oe/recipes-devtools/protobuf/{protobuf_3.21.12.bb => protobuf_4.22.2.bb} (86%)
>>
>> diff --git a/meta-oe/recipes-devtools/protobuf/protobuf/0001-examples-Makefile-respect-CXX-LDFLAGS-variables-fix-.patch b/meta-oe/recipes-devtools/protobuf/protobuf/0001-examples-Makefile-respect-CXX-LDFLAGS-variables-fix-.patch
>> index 36c3c597a..7c4bf260e 100644
>> --- a/meta-oe/recipes-devtools/protobuf/protobuf/0001-examples-Makefile-respect-CXX-LDFLAGS-variables-fix-.patch
>> +++ b/meta-oe/recipes-devtools/protobuf/protobuf/0001-examples-Makefile-respect-CXX-LDFLAGS-variables-fix-.patch
>> @@ -30,7 +30,7 @@ Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
>>    1 file changed, 4 insertions(+), 2 deletions(-)
>>
>>   diff --git a/examples/Makefile b/examples/Makefile
>> -index 1c7ec8d63..85f591231 100644
>> +index ef7a4ef58..7206e14e1 100644
>>   --- a/examples/Makefile
>>   +++ b/examples/Makefile
>>   @@ -2,6 +2,8 @@
>> @@ -42,17 +42,20 @@ index 1c7ec8d63..85f591231 100644
>>    all: cpp java python
>>
>>    cpp:    add_person_cpp    list_people_cpp
>> -@@ -40,11 +42,11 @@ protoc_middleman_dart: addressbook.proto
>> +@@ -41,11 +43,11 @@ protoc_middleman_dart: addressbook.proto
>>
>>    add_person_cpp: add_person.cc protoc_middleman
>>          pkg-config --cflags protobuf  # fails if protobuf is not installed
>> --      c++ -std=c++11 add_person.cc addressbook.pb.cc -o add_person_cpp `pkg-config --cflags --libs protobuf`
>> -+      $(CXX) $(CXXFLAGS) $(LDFLAGS) ../src/google/protobuf/.libs/timestamp.pb.o $(PROTOBUF) add_person.cc addressbook.pb.cc -o add_person_cpp
>> +-      c++ -std=c++14 add_person.cc addressbook.pb.cc -o add_person_cpp `pkg-config --cflags --libs protobuf`
>> ++      $(CXX) $(CXXFLAGS) $(LDFLAGS) ../src/google/protobuf/.libs/timestamp.pb.o $(PROTOBUF) add_person.cc addressbook.pb.cc -o add_person_cpp #$(CXX) -std=c++17 $(PROTOBUF) add_person.cc addressbook.pb.cc -o add_person_cpp
>>
>>    list_people_cpp: list_people.cc protoc_middleman
>>          pkg-config --cflags protobuf  # fails if protobuf is not installed
>> --      c++ -std=c++11 list_people.cc addressbook.pb.cc -o list_people_cpp `pkg-config --cflags --libs protobuf`
>> -+      $(CXX) $(CXXFLAGS) $(LDFLAGS) ../src/google/protobuf/.libs/timestamp.pb.o $(PROTOBUF) list_people.cc addressbook.pb.cc -o list_people_cpp
>> +-      c++ -std=c++14 list_people.cc addressbook.pb.cc -o list_people_cpp `pkg-config --cflags --libs protobuf`
>> ++      $(CXX) $(CXXFLAGS) $(LDFLAGS) ../src/google/protobuf/.libs/timestamp.pb.o $(PROTOBUF) list_people.cc addressbook.pb.cc -o list_people_cpp #$(CXX) -std=c++17 $(PROTOBUF) list_people.cc addressbook.pb.cc -o list_people_cpp
>>
>>    add_person_dart: add_person.dart protoc_middleman_dart
>>
>> +--
>> +2.34.1
>> +
>> diff --git a/meta-oe/recipes-devtools/protobuf/protobuf_3.21.12.bb b/meta-oe/recipes-devtools/protobuf/protobuf_4.22.2.bb
>> similarity index 86%
>> rename from meta-oe/recipes-devtools/protobuf/protobuf_3.21.12.bb
>> rename to meta-oe/recipes-devtools/protobuf/protobuf_4.22.2.bb
>> index 343933033..0c6b446dc 100644
>> --- a/meta-oe/recipes-devtools/protobuf/protobuf_3.21.12.bb
>> +++ b/meta-oe/recipes-devtools/protobuf/protobuf_4.22.2.bb
>> @@ -7,12 +7,12 @@ SECTION = "console/tools"
>>   LICENSE = "BSD-3-Clause"
>>   LIC_FILES_CHKSUM = "file://LICENSE;md5=37b5762e07f0af8c74ce80a8bda4266b"
>>
>> -DEPENDS = "zlib"
>> +DEPENDS = "zlib abseil-cpp"
>>   DEPENDS:append:class-target = " protobuf-native"
>>
>> -SRCREV = "f0dc78d7e6e331b8c6bb2d5283e06aa26883ca7c"
>> +SRCREV = "81f89d509d6771dcccb619cbe26ac86cec472582"
>>
>> -SRC_URI = "git://github.com/protocolbuffers/protobuf.git;branch=21.x;protocol=https \
>> +SRC_URI = "gitsm://github.com/protocolbuffers/protobuf.git;branch=22.x;protocol=https \
>>              file://run-ptest \
>>              file://0001-examples-Makefile-respect-CXX-LDFLAGS-variables-fix-.patch \
>>              file://0001-Fix-linking-error-with-ld-gold.patch \
>> @@ -35,6 +35,7 @@ EXTRA_OECMAKE += "\
>>       -Dprotobuf_BUILD_LIBPROTOC=ON \
>>       -Dprotobuf_BUILD_TESTS=OFF \
>>       -Dprotobuf_BUILD_EXAMPLES=OFF \
>> +    -Dprotobuf_ABSL_PROVIDER="package" \
>>   "
>>
>>   TEST_SRC_DIR = "examples"
>> @@ -52,7 +53,11 @@ do_compile_ptest() {
>>          cp ${S}/${TEST_SRC_DIR}/Makefile "${B}/${TEST_SRC_DIR}/"
>>          sed -e 's|libdir=|libdir=${PKG_CONFIG_SYSROOT_DIR}|' -i "${B}/${TEST_SRC_DIR}/protobuf.pc"
>>          sed -e 's|Cflags:|Cflags: -I${S}/src|' -i "${B}/${TEST_SRC_DIR}/protobuf.pc"
>> +       sed -e 's|Cflags:|Cflags: -I${WORKDIR}/recipe-sysroot-native${includedir} |' -i "${B}/${TEST_SRC_DIR}/protobuf.pc"
>>          sed -e 's|Libs:|Libs: -L${B}|' -i "${B}/${TEST_SRC_DIR}/protobuf.pc"
>> +       sed -e 's|Libs:|Libs: -L${WORKDIR}/recipe-sysroot-native/usr/lib|' -i "${B}/${TEST_SRC_DIR}/protobuf.pc"
>> +       sed -e 's|Libs:|Libs: -labsl_log_internal_check_op |' -i "${B}/${TEST_SRC_DIR}/protobuf.pc"
>> +       sed -e 's|Libs:|Libs: -labsl_log_internal_message |' -i "${B}/${TEST_SRC_DIR}/protobuf.pc"
>>          # Until out-of-tree build of examples is supported, we have to use this approach
>>          sed -e 's|../src/google/protobuf/.libs/timestamp.pb.o|${B}/CMakeFiles/libprotobuf.dir/src/google/protobuf/timestamp.pb.cc.o|' -i "${B}/${TEST_SRC_DIR}/Makefile"
>>          export PKG_CONFIG_PATH="${B}/${TEST_SRC_DIR}"
>> --
>> 2.34.1
>>


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [oe][meta-oe][PATCH v2 1/2] protobuf: upgrade 3.21.12 -> 4.22.2
       [not found]     ` <175085C237DCAF2E.28404@lists.openembedded.org>
@ 2023-03-29  1:57       ` Xiangyu Chen
  2023-03-29  2:12         ` Khem Raj
  0 siblings, 1 reply; 7+ messages in thread
From: Xiangyu Chen @ 2023-03-29  1:57 UTC (permalink / raw)
  To: Khem Raj; +Cc: openembedded-devel

Hi,


On 3/28/23 15:48, Xiangyu Chen wrote:
> Hello,
>
>
> On 3/28/23 15:22, Khem Raj wrote:
>> CAUTION: This email comes from a non Wind River email account!
>> Do not click links or open attachments unless you recognize the 
>> sender and know the content is safe.
>>
>> it stil fails
>>
>> Summary: 2 tasks failed:
>> virtual:native:/mnt/b/yoe/master/sources/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf-c_1.4.1.bb:do_compile
>> /mnt/b/yoe/master/sources/meta-openembedded/meta-oe/recipes-connectivity/mosh/mosh_1.4.0.bb:do_configure
>> Summary: There were 4 ERROR messages, returning a non-zero exit code.
>
> Could you please help to share the error log with me? thanks.
>
> I applied the protobuf-c related patch cannot reproduce in my local 
> setup with "bitbake protobuf-c -c cleanall;bitbake protobuf-c" .
>
Upgrading protobuf caused the mosh compile error has already fixed and 
sent a patch to mosh upstream[1], this commit will contain in V3 patch,

but regarding protobuf-c, after applying the patch that was sent to 
oe-dev list[2] yesterday is building normal in my local setup. could you 
help to

share the error log which happens on build server? thanks!


[1] https://github.com/mobile-shell/mosh/pull/1266

[2] https://lists.openembedded.org/g/openembedded-devel/message/101797


Thanks!


>
> Br,
>
> Xiangyu
>
>>
>> On Mon, Mar 27, 2023 at 11:43 PM Xiangyu Chen
>> <xiangyu.chen@eng.windriver.com> wrote:
>>> From: Xiangyu Chen <xiangyu.chen@windriver.com>
>>>
>>> Signed-off-by: Xiangyu Chen <xiangyu.chen@windriver.com>
>>> ---
>>>   ...efile-respect-CXX-LDFLAGS-variables-fix-.patch | 15 
>>> +++++++++------
>>>   .../{protobuf_3.21.12.bb => protobuf_4.22.2.bb}   | 11 ++++++++---
>>>   2 files changed, 17 insertions(+), 9 deletions(-)
>>>   rename meta-oe/recipes-devtools/protobuf/{protobuf_3.21.12.bb => 
>>> protobuf_4.22.2.bb} (86%)
>>>
>>> diff --git 
>>> a/meta-oe/recipes-devtools/protobuf/protobuf/0001-examples-Makefile-respect-CXX-LDFLAGS-variables-fix-.patch 
>>> b/meta-oe/recipes-devtools/protobuf/protobuf/0001-examples-Makefile-respect-CXX-LDFLAGS-variables-fix-.patch 
>>>
>>> index 36c3c597a..7c4bf260e 100644
>>> --- 
>>> a/meta-oe/recipes-devtools/protobuf/protobuf/0001-examples-Makefile-respect-CXX-LDFLAGS-variables-fix-.patch
>>> +++ 
>>> b/meta-oe/recipes-devtools/protobuf/protobuf/0001-examples-Makefile-respect-CXX-LDFLAGS-variables-fix-.patch
>>> @@ -30,7 +30,7 @@ Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
>>>    1 file changed, 4 insertions(+), 2 deletions(-)
>>>
>>>   diff --git a/examples/Makefile b/examples/Makefile
>>> -index 1c7ec8d63..85f591231 100644
>>> +index ef7a4ef58..7206e14e1 100644
>>>   --- a/examples/Makefile
>>>   +++ b/examples/Makefile
>>>   @@ -2,6 +2,8 @@
>>> @@ -42,17 +42,20 @@ index 1c7ec8d63..85f591231 100644
>>>    all: cpp java python
>>>
>>>    cpp:    add_person_cpp    list_people_cpp
>>> -@@ -40,11 +42,11 @@ protoc_middleman_dart: addressbook.proto
>>> +@@ -41,11 +43,11 @@ protoc_middleman_dart: addressbook.proto
>>>
>>>    add_person_cpp: add_person.cc protoc_middleman
>>>          pkg-config --cflags protobuf  # fails if protobuf is not 
>>> installed
>>> --      c++ -std=c++11 add_person.cc addressbook.pb.cc -o 
>>> add_person_cpp `pkg-config --cflags --libs protobuf`
>>> -+      $(CXX) $(CXXFLAGS) $(LDFLAGS) 
>>> ../src/google/protobuf/.libs/timestamp.pb.o $(PROTOBUF) 
>>> add_person.cc addressbook.pb.cc -o add_person_cpp
>>> +-      c++ -std=c++14 add_person.cc addressbook.pb.cc -o 
>>> add_person_cpp `pkg-config --cflags --libs protobuf`
>>> ++      $(CXX) $(CXXFLAGS) $(LDFLAGS) 
>>> ../src/google/protobuf/.libs/timestamp.pb.o $(PROTOBUF) 
>>> add_person.cc addressbook.pb.cc -o add_person_cpp #$(CXX) -std=c++17 
>>> $(PROTOBUF) add_person.cc addressbook.pb.cc -o add_person_cpp
>>>
>>>    list_people_cpp: list_people.cc protoc_middleman
>>>          pkg-config --cflags protobuf  # fails if protobuf is not 
>>> installed
>>> --      c++ -std=c++11 list_people.cc addressbook.pb.cc -o 
>>> list_people_cpp `pkg-config --cflags --libs protobuf`
>>> -+      $(CXX) $(CXXFLAGS) $(LDFLAGS) 
>>> ../src/google/protobuf/.libs/timestamp.pb.o $(PROTOBUF) 
>>> list_people.cc addressbook.pb.cc -o list_people_cpp
>>> +-      c++ -std=c++14 list_people.cc addressbook.pb.cc -o 
>>> list_people_cpp `pkg-config --cflags --libs protobuf`
>>> ++      $(CXX) $(CXXFLAGS) $(LDFLAGS) 
>>> ../src/google/protobuf/.libs/timestamp.pb.o $(PROTOBUF) 
>>> list_people.cc addressbook.pb.cc -o list_people_cpp #$(CXX) 
>>> -std=c++17 $(PROTOBUF) list_people.cc addressbook.pb.cc -o 
>>> list_people_cpp
>>>
>>>    add_person_dart: add_person.dart protoc_middleman_dart
>>>
>>> +--
>>> +2.34.1
>>> +
>>> diff --git a/meta-oe/recipes-devtools/protobuf/protobuf_3.21.12.bb 
>>> b/meta-oe/recipes-devtools/protobuf/protobuf_4.22.2.bb
>>> similarity index 86%
>>> rename from meta-oe/recipes-devtools/protobuf/protobuf_3.21.12.bb
>>> rename to meta-oe/recipes-devtools/protobuf/protobuf_4.22.2.bb
>>> index 343933033..0c6b446dc 100644
>>> --- a/meta-oe/recipes-devtools/protobuf/protobuf_3.21.12.bb
>>> +++ b/meta-oe/recipes-devtools/protobuf/protobuf_4.22.2.bb
>>> @@ -7,12 +7,12 @@ SECTION = "console/tools"
>>>   LICENSE = "BSD-3-Clause"
>>>   LIC_FILES_CHKSUM = 
>>> "file://LICENSE;md5=37b5762e07f0af8c74ce80a8bda4266b"
>>>
>>> -DEPENDS = "zlib"
>>> +DEPENDS = "zlib abseil-cpp"
>>>   DEPENDS:append:class-target = " protobuf-native"
>>>
>>> -SRCREV = "f0dc78d7e6e331b8c6bb2d5283e06aa26883ca7c"
>>> +SRCREV = "81f89d509d6771dcccb619cbe26ac86cec472582"
>>>
>>> -SRC_URI = 
>>> "git://github.com/protocolbuffers/protobuf.git;branch=21.x;protocol=https 
>>> \
>>> +SRC_URI = 
>>> "gitsm://github.com/protocolbuffers/protobuf.git;branch=22.x;protocol=https 
>>> \
>>>              file://run-ptest \
>>> file://0001-examples-Makefile-respect-CXX-LDFLAGS-variables-fix-.patch 
>>> \
>>>              file://0001-Fix-linking-error-with-ld-gold.patch \
>>> @@ -35,6 +35,7 @@ EXTRA_OECMAKE += "\
>>>       -Dprotobuf_BUILD_LIBPROTOC=ON \
>>>       -Dprotobuf_BUILD_TESTS=OFF \
>>>       -Dprotobuf_BUILD_EXAMPLES=OFF \
>>> +    -Dprotobuf_ABSL_PROVIDER="package" \
>>>   "
>>>
>>>   TEST_SRC_DIR = "examples"
>>> @@ -52,7 +53,11 @@ do_compile_ptest() {
>>>          cp ${S}/${TEST_SRC_DIR}/Makefile "${B}/${TEST_SRC_DIR}/"
>>>          sed -e 's|libdir=|libdir=${PKG_CONFIG_SYSROOT_DIR}|' -i 
>>> "${B}/${TEST_SRC_DIR}/protobuf.pc"
>>>          sed -e 's|Cflags:|Cflags: -I${S}/src|' -i 
>>> "${B}/${TEST_SRC_DIR}/protobuf.pc"
>>> +       sed -e 's|Cflags:|Cflags: 
>>> -I${WORKDIR}/recipe-sysroot-native${includedir} |' -i 
>>> "${B}/${TEST_SRC_DIR}/protobuf.pc"
>>>          sed -e 's|Libs:|Libs: -L${B}|' -i 
>>> "${B}/${TEST_SRC_DIR}/protobuf.pc"
>>> +       sed -e 's|Libs:|Libs: 
>>> -L${WORKDIR}/recipe-sysroot-native/usr/lib|' -i 
>>> "${B}/${TEST_SRC_DIR}/protobuf.pc"
>>> +       sed -e 's|Libs:|Libs: -labsl_log_internal_check_op |' -i 
>>> "${B}/${TEST_SRC_DIR}/protobuf.pc"
>>> +       sed -e 's|Libs:|Libs: -labsl_log_internal_message |' -i 
>>> "${B}/${TEST_SRC_DIR}/protobuf.pc"
>>>          # Until out-of-tree build of examples is supported, we have 
>>> to use this approach
>>>          sed -e 
>>> 's|../src/google/protobuf/.libs/timestamp.pb.o|${B}/CMakeFiles/libprotobuf.dir/src/google/protobuf/timestamp.pb.cc.o|' 
>>> -i "${B}/${TEST_SRC_DIR}/Makefile"
>>>          export PKG_CONFIG_PATH="${B}/${TEST_SRC_DIR}"
>>> -- 
>>> 2.34.1
>>>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#101802): https://lists.openembedded.org/g/openembedded-devel/message/101802
> Mute This Topic: https://lists.openembedded.org/mt/97900181/7175143
> Group Owner: openembedded-devel+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub [xiangyu.chen@eng.windriver.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [oe][meta-oe][PATCH v2 1/2] protobuf: upgrade 3.21.12 -> 4.22.2
  2023-03-29  1:57       ` Xiangyu Chen
@ 2023-03-29  2:12         ` Khem Raj
  0 siblings, 0 replies; 7+ messages in thread
From: Khem Raj @ 2023-03-29  2:12 UTC (permalink / raw)
  To: Xiangyu Chen; +Cc: openembedded-devel

On Tue, Mar 28, 2023 at 6:57 PM Xiangyu Chen
<xiangyu.chen@eng.windriver.com> wrote:
>
> Hi,
>
>
> On 3/28/23 15:48, Xiangyu Chen wrote:
> > Hello,
> >
> >
> > On 3/28/23 15:22, Khem Raj wrote:
> >> CAUTION: This email comes from a non Wind River email account!
> >> Do not click links or open attachments unless you recognize the
> >> sender and know the content is safe.
> >>
> >> it stil fails
> >>
> >> Summary: 2 tasks failed:
> >> virtual:native:/mnt/b/yoe/master/sources/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf-c_1.4.1.bb:do_compile
> >> /mnt/b/yoe/master/sources/meta-openembedded/meta-oe/recipes-connectivity/mosh/mosh_1.4.0.bb:do_configure
> >> Summary: There were 4 ERROR messages, returning a non-zero exit code.
> >
> > Could you please help to share the error log with me? thanks.
> >
> > I applied the protobuf-c related patch cannot reproduce in my local
> > setup with "bitbake protobuf-c -c cleanall;bitbake protobuf-c" .
> >
> Upgrading protobuf caused the mosh compile error has already fixed and
> sent a patch to mosh upstream[1], this commit will contain in V3 patch,
>
> but regarding protobuf-c, after applying the patch that was sent to
> oe-dev list[2] yesterday is building normal in my local setup. could you
> help to
>
> share the error log which happens on build server? thanks!

Try building with clang perhaps thats is whats failing.

>
>
> [1] https://github.com/mobile-shell/mosh/pull/1266
>
> [2] https://lists.openembedded.org/g/openembedded-devel/message/101797
>
>
> Thanks!
>
>
> >
> > Br,
> >
> > Xiangyu
> >
> >>
> >> On Mon, Mar 27, 2023 at 11:43 PM Xiangyu Chen
> >> <xiangyu.chen@eng.windriver.com> wrote:
> >>> From: Xiangyu Chen <xiangyu.chen@windriver.com>
> >>>
> >>> Signed-off-by: Xiangyu Chen <xiangyu.chen@windriver.com>
> >>> ---
> >>>   ...efile-respect-CXX-LDFLAGS-variables-fix-.patch | 15
> >>> +++++++++------
> >>>   .../{protobuf_3.21.12.bb => protobuf_4.22.2.bb}   | 11 ++++++++---
> >>>   2 files changed, 17 insertions(+), 9 deletions(-)
> >>>   rename meta-oe/recipes-devtools/protobuf/{protobuf_3.21.12.bb =>
> >>> protobuf_4.22.2.bb} (86%)
> >>>
> >>> diff --git
> >>> a/meta-oe/recipes-devtools/protobuf/protobuf/0001-examples-Makefile-respect-CXX-LDFLAGS-variables-fix-.patch
> >>> b/meta-oe/recipes-devtools/protobuf/protobuf/0001-examples-Makefile-respect-CXX-LDFLAGS-variables-fix-.patch
> >>>
> >>> index 36c3c597a..7c4bf260e 100644
> >>> ---
> >>> a/meta-oe/recipes-devtools/protobuf/protobuf/0001-examples-Makefile-respect-CXX-LDFLAGS-variables-fix-.patch
> >>> +++
> >>> b/meta-oe/recipes-devtools/protobuf/protobuf/0001-examples-Makefile-respect-CXX-LDFLAGS-variables-fix-.patch
> >>> @@ -30,7 +30,7 @@ Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
> >>>    1 file changed, 4 insertions(+), 2 deletions(-)
> >>>
> >>>   diff --git a/examples/Makefile b/examples/Makefile
> >>> -index 1c7ec8d63..85f591231 100644
> >>> +index ef7a4ef58..7206e14e1 100644
> >>>   --- a/examples/Makefile
> >>>   +++ b/examples/Makefile
> >>>   @@ -2,6 +2,8 @@
> >>> @@ -42,17 +42,20 @@ index 1c7ec8d63..85f591231 100644
> >>>    all: cpp java python
> >>>
> >>>    cpp:    add_person_cpp    list_people_cpp
> >>> -@@ -40,11 +42,11 @@ protoc_middleman_dart: addressbook.proto
> >>> +@@ -41,11 +43,11 @@ protoc_middleman_dart: addressbook.proto
> >>>
> >>>    add_person_cpp: add_person.cc protoc_middleman
> >>>          pkg-config --cflags protobuf  # fails if protobuf is not
> >>> installed
> >>> --      c++ -std=c++11 add_person.cc addressbook.pb.cc -o
> >>> add_person_cpp `pkg-config --cflags --libs protobuf`
> >>> -+      $(CXX) $(CXXFLAGS) $(LDFLAGS)
> >>> ../src/google/protobuf/.libs/timestamp.pb.o $(PROTOBUF)
> >>> add_person.cc addressbook.pb.cc -o add_person_cpp
> >>> +-      c++ -std=c++14 add_person.cc addressbook.pb.cc -o
> >>> add_person_cpp `pkg-config --cflags --libs protobuf`
> >>> ++      $(CXX) $(CXXFLAGS) $(LDFLAGS)
> >>> ../src/google/protobuf/.libs/timestamp.pb.o $(PROTOBUF)
> >>> add_person.cc addressbook.pb.cc -o add_person_cpp #$(CXX) -std=c++17
> >>> $(PROTOBUF) add_person.cc addressbook.pb.cc -o add_person_cpp
> >>>
> >>>    list_people_cpp: list_people.cc protoc_middleman
> >>>          pkg-config --cflags protobuf  # fails if protobuf is not
> >>> installed
> >>> --      c++ -std=c++11 list_people.cc addressbook.pb.cc -o
> >>> list_people_cpp `pkg-config --cflags --libs protobuf`
> >>> -+      $(CXX) $(CXXFLAGS) $(LDFLAGS)
> >>> ../src/google/protobuf/.libs/timestamp.pb.o $(PROTOBUF)
> >>> list_people.cc addressbook.pb.cc -o list_people_cpp
> >>> +-      c++ -std=c++14 list_people.cc addressbook.pb.cc -o
> >>> list_people_cpp `pkg-config --cflags --libs protobuf`
> >>> ++      $(CXX) $(CXXFLAGS) $(LDFLAGS)
> >>> ../src/google/protobuf/.libs/timestamp.pb.o $(PROTOBUF)
> >>> list_people.cc addressbook.pb.cc -o list_people_cpp #$(CXX)
> >>> -std=c++17 $(PROTOBUF) list_people.cc addressbook.pb.cc -o
> >>> list_people_cpp
> >>>
> >>>    add_person_dart: add_person.dart protoc_middleman_dart
> >>>
> >>> +--
> >>> +2.34.1
> >>> +
> >>> diff --git a/meta-oe/recipes-devtools/protobuf/protobuf_3.21.12.bb
> >>> b/meta-oe/recipes-devtools/protobuf/protobuf_4.22.2.bb
> >>> similarity index 86%
> >>> rename from meta-oe/recipes-devtools/protobuf/protobuf_3.21.12.bb
> >>> rename to meta-oe/recipes-devtools/protobuf/protobuf_4.22.2.bb
> >>> index 343933033..0c6b446dc 100644
> >>> --- a/meta-oe/recipes-devtools/protobuf/protobuf_3.21.12.bb
> >>> +++ b/meta-oe/recipes-devtools/protobuf/protobuf_4.22.2.bb
> >>> @@ -7,12 +7,12 @@ SECTION = "console/tools"
> >>>   LICENSE = "BSD-3-Clause"
> >>>   LIC_FILES_CHKSUM =
> >>> "file://LICENSE;md5=37b5762e07f0af8c74ce80a8bda4266b"
> >>>
> >>> -DEPENDS = "zlib"
> >>> +DEPENDS = "zlib abseil-cpp"
> >>>   DEPENDS:append:class-target = " protobuf-native"
> >>>
> >>> -SRCREV = "f0dc78d7e6e331b8c6bb2d5283e06aa26883ca7c"
> >>> +SRCREV = "81f89d509d6771dcccb619cbe26ac86cec472582"
> >>>
> >>> -SRC_URI =
> >>> "git://github.com/protocolbuffers/protobuf.git;branch=21.x;protocol=https
> >>> \
> >>> +SRC_URI =
> >>> "gitsm://github.com/protocolbuffers/protobuf.git;branch=22.x;protocol=https
> >>> \
> >>>              file://run-ptest \
> >>> file://0001-examples-Makefile-respect-CXX-LDFLAGS-variables-fix-.patch
> >>> \
> >>>              file://0001-Fix-linking-error-with-ld-gold.patch \
> >>> @@ -35,6 +35,7 @@ EXTRA_OECMAKE += "\
> >>>       -Dprotobuf_BUILD_LIBPROTOC=ON \
> >>>       -Dprotobuf_BUILD_TESTS=OFF \
> >>>       -Dprotobuf_BUILD_EXAMPLES=OFF \
> >>> +    -Dprotobuf_ABSL_PROVIDER="package" \
> >>>   "
> >>>
> >>>   TEST_SRC_DIR = "examples"
> >>> @@ -52,7 +53,11 @@ do_compile_ptest() {
> >>>          cp ${S}/${TEST_SRC_DIR}/Makefile "${B}/${TEST_SRC_DIR}/"
> >>>          sed -e 's|libdir=|libdir=${PKG_CONFIG_SYSROOT_DIR}|' -i
> >>> "${B}/${TEST_SRC_DIR}/protobuf.pc"
> >>>          sed -e 's|Cflags:|Cflags: -I${S}/src|' -i
> >>> "${B}/${TEST_SRC_DIR}/protobuf.pc"
> >>> +       sed -e 's|Cflags:|Cflags:
> >>> -I${WORKDIR}/recipe-sysroot-native${includedir} |' -i
> >>> "${B}/${TEST_SRC_DIR}/protobuf.pc"
> >>>          sed -e 's|Libs:|Libs: -L${B}|' -i
> >>> "${B}/${TEST_SRC_DIR}/protobuf.pc"
> >>> +       sed -e 's|Libs:|Libs:
> >>> -L${WORKDIR}/recipe-sysroot-native/usr/lib|' -i
> >>> "${B}/${TEST_SRC_DIR}/protobuf.pc"
> >>> +       sed -e 's|Libs:|Libs: -labsl_log_internal_check_op |' -i
> >>> "${B}/${TEST_SRC_DIR}/protobuf.pc"
> >>> +       sed -e 's|Libs:|Libs: -labsl_log_internal_message |' -i
> >>> "${B}/${TEST_SRC_DIR}/protobuf.pc"
> >>>          # Until out-of-tree build of examples is supported, we have
> >>> to use this approach
> >>>          sed -e
> >>> 's|../src/google/protobuf/.libs/timestamp.pb.o|${B}/CMakeFiles/libprotobuf.dir/src/google/protobuf/timestamp.pb.cc.o|'
> >>> -i "${B}/${TEST_SRC_DIR}/Makefile"
> >>>          export PKG_CONFIG_PATH="${B}/${TEST_SRC_DIR}"
> >>> --
> >>> 2.34.1
> >>>
> >
> > -=-=-=-=-=-=-=-=-=-=-=-
> > Links: You receive all messages sent to this group.
> > View/Reply Online (#101802): https://lists.openembedded.org/g/openembedded-devel/message/101802
> > Mute This Topic: https://lists.openembedded.org/mt/97900181/7175143
> > Group Owner: openembedded-devel+owner@lists.openembedded.org
> > Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub [xiangyu.chen@eng.windriver.com]
> > -=-=-=-=-=-=-=-=-=-=-=-
> >


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2023-03-29  2:12 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-03-28  6:42 [oe][meta-oe][PATCH v2 0/2] protobuf: upgrade 3.21.12 -> 4.22.2 Xiangyu Chen
2023-03-28  6:42 ` [oe][meta-oe][PATCH v2 1/2] " Xiangyu Chen
2023-03-28  7:22   ` Khem Raj
2023-03-28  7:48     ` Xiangyu Chen
     [not found]     ` <175085C237DCAF2E.28404@lists.openembedded.org>
2023-03-29  1:57       ` Xiangyu Chen
2023-03-29  2:12         ` Khem Raj
2023-03-28  6:42 ` [oe][meta-oe][PATCH v2 2/2] protobuf-c: add support of protobuf-4.22.x Xiangyu Chen

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.