Update protobuf to version 25.3
Categories
(Toolkit :: General, task)
Tracking
()
People
(Reporter: RyanVM, Unassigned)
References
()
Details
Attachments
(6 obsolete files)
Our vendored copy of protobuf is about a year out of date now. Unfortunately, updating to a newer release is blocked on having a recent-ish version of abseil-cpp available to it (LTS 20230125 or later). I've got the beginnings of a patch set attempting to utilize the copy vendored in libwebrtc, but unfortunately that's too far out of date to use.
I'm going to file another bug about trying to update our vendored copy of abseil-cpp in libwebrtc under the assumption that bug 1788569 isn't going to move forward any time soon, but I at least want to have this filed to set the dependency.
/home/ryanvm/repos/mozilla/obj-x86_64-pc-linux-gnu/dist/include/google/protobuf/io/coded_stream.h:132:10: fatal error: 'absl/log/absl_check.h' file not found
132 | #include "absl/log/absl_check.h"
| ^~~~~~~~~~~~~~~~~~~~~~~
| Reporter | ||
Updated•2 years ago
|
| Reporter | ||
Comment 1•2 years ago
|
||
With help from mjf, I've got a somewhat-working patch stack with the latest 25.0 release. However, there are some issues remaining still:
- There are a few platforms which are failing to build at the moment due to what appears to be various abseil-related build config issues we haven't been able to sort out:
- Android 32-bit (both Intel & ARM): https://treeherder.mozilla.org/logviewer?job_id=434639121&repo=try&lineNumber=75867
ERROR - ld.lld: error: undefined hidden symbol: __mmap2
- Linux64 Clang Base Toolchains: https://treeherder.mozilla.org/logviewer?job_id=434639147&repo=try&lineNumber=66148
INFO - /builds/worker/fetches/binutils/bin/ld: ../../../third_party/libwebrtc/third_party/abseil-cpp/absl/strings/cord_gn/Unified_cpp_strings_cord_gn0.o: relocation R_X86_64_PC32 against undefined hidden symbol '_ZTHN4absl13cord_internal17cordz_next_sampleE' can not be used when making a shared object- Interestingly, the GCC base-toolchains job builds fine
- Linux64 TSan: https://treeherder.mozilla.org/logviewer?job_id=434639182&repo=try&lineNumber=95063
ERROR - ld.lld: error: undefined hidden symbol: __tsan_read1ERROR - ld.lld: error: undefined hidden symbol: AnnotateIgnoreReadsBegin- etc...
- Windows ASan Reporter: https://treeherder.mozilla.org/logviewer?job_id=434639442&repo=try&lineNumber=36886
error: redeclaration of '__sanitizer_set_report_path' should not add 'dllexport' attribute [-Werror,-Wdll-attribute-on-redeclaration]
- Windows builds in general: https://treeherder.mozilla.org/logviewer?job_id=434639409&repo=try&lineNumber=54261
ERROR - lld-link: error: undefined symbol: public: __thiscall absl::log_internal::LogMessageFatal::LogMessageFatal(char const *, int)- I can kinda work around that by adding
webrtcto the USE_LIBS section of this particular moz.build file, but then I just end up with a bunch of webrtc undefined symbols instead.
- Android 32-bit (both Intel & ARM): https://treeherder.mozilla.org/logviewer?job_id=434639121&repo=try&lineNumber=75867
- Right now, these patches depend on the copy of abseil vendored in our import of libwebrtc, which mostly works in our normal build configuration but predictably doesn't do as well when
--disable-webrtcis specified. I'm not sure if that's something that can be worked around without moving abseil outside of libwebrtc. And this is probably what needs to happen to un-break the Windows contentanalysis agent bustage as well?
But on the bright side, test pass on the platforms that do build!
| Reporter | ||
Comment 2•2 years ago
|
||
| Reporter | ||
Comment 3•2 years ago
|
||
Depends on D192522
| Reporter | ||
Comment 4•2 years ago
|
||
Depends on D192523
| Reporter | ||
Comment 5•2 years ago
|
||
Depends on D192524
| Reporter | ||
Comment 6•2 years ago
|
||
Depends on D192525
| Reporter | ||
Comment 7•2 years ago
|
||
Depends on D192526
| Reporter | ||
Updated•2 years ago
|
Updated•2 years ago
|
| Reporter | ||
Updated•2 years ago
|
Updated•2 years ago
|
| Reporter | ||
Updated•2 years ago
|
Updated•2 years ago
|
| Reporter | ||
Updated•1 year ago
|
Comment 8•1 year ago
|
||
Just for information.
The latest version of protobuf is 28.2 and v29.0-rc1.
Updated•1 year ago
|
Updated•1 year ago
|
| Reporter | ||
Updated•5 months ago
|
Updated•5 months ago
|
Updated•5 months ago
|
Updated•5 months ago
|
Updated•5 months ago
|
Description
•