Skip to content

Dry run upgrade grpc#1

Draft
astarche wants to merge 35 commits intonilrt/master/dunfellfrom
users/astarche/update-grpc
Draft

Dry run upgrade grpc#1
astarche wants to merge 35 commits intonilrt/master/dunfellfrom
users/astarche/update-grpc

Conversation

@astarche
Copy link
Owner

@astarche astarche commented Aug 4, 2021

Cherry pick all commits from oe-master that touch the following recipes:

  • grpc
  • re2
  • abseil-cpp
  • protobuf

Skip commit c61dc077bbd81260e4f167fa2251643ba0ba6974, which is breaking.

Questionable (just-plain-wrong) manual fixups for commit 92441f9d6a958c245a03f89ec44ef2c17dd6b0ee which touches multiple files. Hopefully this cherry-pick will not be needed if we rebase on a newer oe.

protobuf required --keep-redundant-commits . Something with all of the "protobuf-c: Remove workarounds for gcc < 6" commits.

Testing done

Built grpc recipe locally.

kraj and others added 30 commits August 4, 2021 15:24
Signed-off-by: Khem Raj <raj.khem@gmail.com>
This is a really huge jump in versions, but this package has been not
upgraded for quite some time. The previous patches are not necessary
anymore, they're integrated upstream.

Signed-off-by: Anatol Belski <anbelski@linux.microsoft.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
ERROR: grpc-1.35.0-r0 do_package: QA Issue: grpc: Files/directories were installed but not shipped in any package:
  /usr/lib
  /usr/lib/pkgconfig
  /usr/lib/pkgconfig/grpc.pc
  /usr/lib/pkgconfig/grpc_unsecure.pc
  /usr/lib/pkgconfig/grpc++.pc
  /usr/lib/pkgconfig/gpr.pc
  /usr/lib/pkgconfig/grpc++_unsecure.pc
Please set FILES such that these items are packaged. Alternatively if they are unneeded, avoid installing them or delete them within do_install.
grpc: 7 installed and not shipped files. [installed-vs-shipped]
ERROR: grpc-1.35.0-r0 do_package: Fatal QA errors found, failing task.

Signed-off-by: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Clément Péron <peron.clem@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
gFlags has been removed since:
1f670397ce7f8a12dfb1fb32d8857b2233022856 Remove gflags.

With the move to abseil's flags, this removed the now-unnecessary submodule and installation commands.

Signed-off-by: Clément Péron <peron.clem@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Like it's done for protobuf and flatbuffers move the binaries produce
by gRPC to a grpc-compiler package.

This is more explicit and keep coherency with protobuf and flatbuffers.

Signed-off-by: Clément Péron <peron.clem@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Changelog:
https://github.com/grpc/grpc/releases/tag/v1.36.2

Signed-off-by: Sakib Sajal <sakib.sajal@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Changes are here [1]

[1] https://github.com/grpc/grpc/releases/tag/v1.37.1

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Fix build with musl by checking for iovec redefinition

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Zheng Ruoqin <zhengrq.fnst@fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
SkipPackage exception is deprecated.

Signed-off-by: Jacob Kroon <jacob.kroon@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Most patches have been upstreamed and accepted.

We can drop the -fPIC patch and pass BUILD_SHARED_LIBS instead.

Signed-off-by: Clément Péron <peron.clem@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
While better hardware acceleration is definitely advantageous, there is no
hard requirement defined by the upstream. Removing this will allow
builds targeting older hardware where DEFAULTTUNE can't be changed. If
found useful, this can also be backported to lower branches.

Signed-off-by: Anatol Belski <anbelski@linux.microsoft.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
abseil's cmake files can now detect execinfo's presence before depending
on it, therefore no need to link with libexecinfo on musl now

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Newer gcc ( gcc11 ) will be defaulting to c++17 and abseil currently
needs work to get working with c++17, so pin to c++14 untill upstream
gets it working with c++17

Signed-off-by: Khem Raj <raj.khem@gmail.com>
move cmake target files to -dev package and remove check for empty package since
package contains shared libraries

Signed-off-by: Jan Kaisrlik <ja.kaisrlik@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Fix build with glibc 2.34 while here
Forward patches to this version
Let system package the libraries

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Refresh the following patch:
0001-Export-of-internal-Abseil-changes.patch

Signed-off-by: Zang Ruochen <zangrc.fnst@fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Add Google RE2 regular expression library.

This is used in new version of gRPC.

Signed-off-by: Clément Péron <peron.clem@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Unfortunately 489d3b4 did not completely
fix the problem - if you try cleaning and rebuilding protobuf-c-native it
doesn't take long to reproduce the issue on a 32-core machine. I spent
some time trying to debug this but failed, there is still a race between
generating t.test-full.pb.h and compiling cxx_generate_packed_data.c
despite BUILT_SOURCES and explicit dependencies. I even tried converting
the multiple target rules to use grouped targets (&:), that didn't fix it
either. Disabling parallelism as a workaround only costs ~20s and it
turns out that upstream is switching to Meson soon anyway:

  protobuf-c/protobuf-c#340

Signed-off-by: Paul Eggleton <paul.eggleton@linux.microsoft.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Upgrade to release 3.12.3. Update the path to the git repository
in GitHub. Update the patch for examples/Makefile.

The new release brings:

- [experimental] Singular, non-message typed fields in proto3 now
  support presence tracking. This is enabled by adding the
  "optional" field label and passing the
  --experimental_allow_proto3_optional flag to protoc.
- Allow duplicate symbol names when multiple descriptor sets are
  passed on the command-line, to match the behavior when multiple
  .proto files are passed.
- Deterministic protoc --descriptor_set_out
- Bug fixes for the supported programming languages

Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Unfortunately 489d3b4 did not completely
fix the problem - if you try cleaning and rebuilding protobuf-c-native it
doesn't take long to reproduce the issue on a 32-core machine. I spent
some time trying to debug this but failed, there is still a race between
generating t.test-full.pb.h and compiling cxx_generate_packed_data.c
despite BUILT_SOURCES and explicit dependencies. I even tried converting
the multiple target rules to use grouped targets (&:), that didn't fix it
either. Disabling parallelism as a workaround only costs ~20s and it
turns out that upstream is switching to Meson soon anyway:

  protobuf-c/protobuf-c#340

Signed-off-by: Paul Eggleton <paul.eggleton@linux.microsoft.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
(cherry picked from commit 3251fe2)
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Zang Ruochen <zangrc.fnst@cn.fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Zang Ruochen <zangrc.fnst@cn.fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
zangrc-fnst and others added 5 commits August 4, 2021 15:36
Signed-off-by: Zang Ruochen <zangrc.fnst@cn.fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
This upstream fix solves an issue by which the protobuf pkg-config
linker flags did not provide -pthread. This can result in segmentation
faults due to no available pthread library.

See protocolbuffers/protobuf#8059 for details
on the issue.

Signed-off-by: Adrian Herrera <adrian.herrera@arm.com>
Change-Id: I628be3b352a2e3bd70a046c8c3b3fe1f10fb9669
Signed-off-by: Khem Raj <raj.khem@gmail.com>
0001-fix-m4-pthread-update.patch
Removed since this is included in 3.15.2.

Signed-off-by: Wang Mingyu <wangmy@cn.fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Zang Ruochen <zangrc.fnst@fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
@astarche
Copy link
Owner Author

astarche commented Aug 4, 2021

TODO: fix name/email and re-do cherry picks

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.