Ports fixed or updated to work with the latest grpc-1.34.0:
- devel/bear (WIP)
- devel/google-cloud-cpp
- net/rubygem-grpc
https://github.com/grpc/grpc/releases/
PR:
Submitted by:
Reported by:
Differential D27752
devel/grpc: Update to version 1.34.0 and fix build of dependencies jrm on Dec 24 2020, 6:01 AM. Authored by Tags None Referenced Files
Details Ports fixed or updated to work with the latest grpc-1.34.0:
https://github.com/grpc/grpc/releases/ PR: testport 11/12 i386/amd64 passes
Diff Detail
Event TimelineComment Actions I recall that a previous update of devel/grpc was backed out, because it broke some consumer ports. Hopefully those consumers have been fixed to work with recent releases of grpc, but if they are not, could we make a separate, legacy-version grpc port? Some other ports like devel/bear require recent versions of grpc. Comment Actions I forgot to mention that stage-qa reports issues about some libraries missing SONAMES. ====> Running Q/A tests (stage-qa) Warning: /wrkdirs/usr/ports/devel/grpc/work/stage/usr/local/lib/libgrpc.so.14.0.0 doesn't have a SONAME. Warning: pkg(8) will not register it as being provided by the port. Warning: If another port depend on it, pkg will not be able to know where it comes from. Warning: It is directly in /usr/local/lib, it is probably used by other ports. Warning: /wrkdirs/usr/ports/devel/grpc/work/stage/usr/local/lib/libgrpc++_reflection.so.1.34.0 doesn't have a SONAME. Warning: pkg(8) will not register it as being provided by the port. Warning: If another port depend on it, pkg will not be able to know where it comes from. Warning: It is directly in /usr/local/lib, it is probably used by other ports. Warning: /wrkdirs/usr/ports/devel/grpc/work/stage/usr/local/lib/libgrpc++_unsecure.so.1.34.0 doesn't have a SONAME. Warning: pkg(8) will not register it as being provided by the port. Warning: If another port depend on it, pkg will not be able to know where it comes from. Warning: It is directly in /usr/local/lib, it is probably used by other ports. Warning: /wrkdirs/usr/ports/devel/grpc/work/stage/usr/local/lib/libgrpc++.so.1.34.0 doesn't have a SONAME. Warning: pkg(8) will not register it as being provided by the port. Warning: If another port depend on it, pkg will not be able to know where it comes from. Warning: It is directly in /usr/local/lib, it is probably used by other ports. Warning: /wrkdirs/usr/ports/devel/grpc/work/stage/usr/local/lib/libgrpcpp_channelz.so.1.34.0 doesn't have a SONAME. Warning: pkg(8) will not register it as being provided by the port. Warning: If another port depend on it, pkg will not be able to know where it comes from. Warning: It is directly in /usr/local/lib, it is probably used by other ports. I'm still not sure why. When I check those libraries manually, they all do have SONAMES. root@12amd64-default:/wrkdirs/usr/ports/devel/grpc/work/stage/usr/local/lib # readelf -d libgrpc.so.14.0.0 libgrpc++_reflection.so.1.34.0 libgrpc++_unsecure.so.1.34.0 libgrpc++.so.1.34.0 libgrpcpp_channelz.so.1.34.0 | grep SONAME 0x000000000000000e SONAME Library soname: [libgrpc.so.14] 0x000000000000000e SONAME Library soname: [libgrpc++_reflection.so.1] 0x000000000000000e SONAME Library soname: [libgrpc++_unsecure.so.1] 0x000000000000000e SONAME Library soname: [libgrpc++.so.1] 0x000000000000000e SONAME Library soname: [libgrpcpp_channelz.so.1] Comment Actions Fix ports depending on devel/grpc
science/py-tensorflow is already marked BROKEN, so I believe this should Comment Actions My patch for grpc is at https://people.FreeBSD.org/~sunpoet/patch/devel-grpc.txt. The main difference is to use benchmark from ports tree. Comment Actions Regarding the stage-qa issue, I did see it while drafting the patch but do not see it with current patch. Comment Actions Thanks @sunpoet. Diff of devel/grpc updated. I think now we just have to hear back from @mfechner and @amzo1337_gmail.com. Comment Actions @jrm thanks a lot for this update. From my site green light to commit it. Comment Actions New errors that appear after (Sorry, originally pasted the wrong revision. Errors below are from rP559622.) ld: error: libgrpc.so.14.0.0: undefined reference to absl::lts_2020_09_23::numbers_internal::safe_strto32_base(absl::lts_2020_09_23::string_view, int*, int) ld: error: libgrpc.so.14.0.0: undefined reference to absl::lts_2020_09_23::optional_internal::throw_bad_optional_access() ld: error: libgrpc.so.14.0.0: undefined reference to absl::lts_2020_09_23::Status::GetPayload(absl::lts_2020_09_23::string_view) const ld: error: libgrpc.so.14.0.0: undefined reference to absl::lts_2020_09_23::Status::Status(absl::lts_2020_09_23::StatusCode, absl::lts_2020_09_23::string_view) ld: error: libgrpc.so.14.0.0: undefined reference to absl::lts_2020_09_23::strings_internal::CatPieces(std::initializer_list<absl::lts_2020_09_23::string_view>) ld: error: libgrpc.so.14.0.0: undefined reference to absl::lts_2020_09_23::EqualsIgnoreCase(absl::lts_2020_09_23::string_view, absl::lts_2020_09_23::string_view) ld: error: libgrpc.so.14.0.0: undefined reference to absl::lts_2020_09_23::numbers_internal::safe_strto64_base(absl::lts_2020_09_23::string_view, long*, int) ld: error: libgrpc.so.14.0.0: undefined reference to absl::lts_2020_09_23::StartsWithIgnoreCase(absl::lts_2020_09_23::string_view, absl::lts_2020_09_23::string_view) ld: error: libgrpc.so.14.0.0: undefined reference to absl::lts_2020_09_23::Status::SetPayload(absl::lts_2020_09_23::string_view, absl::lts_2020_09_23::Cord) ld: error: libgrpc.so.14.0.0: undefined reference to absl::lts_2020_09_23::numbers_internal::safe_strtou32_base(absl::lts_2020_09_23::string_view, unsigned int*, int) ld: error: libgrpc.so.14.0.0: undefined reference to absl::lts_2020_09_23::ByChar::Find(absl::lts_2020_09_23::string_view, unsigned long) const ld: error: libgrpc.so.14.0.0: undefined reference to absl::lts_2020_09_23::string_view::find(absl::lts_2020_09_23::string_view, unsigned long) const ld: error: libgrpc.so.14.0.0: undefined reference to absl::lts_2020_09_23::string_view::rfind(absl::lts_2020_09_23::string_view, unsigned long) const ld: error: libgrpc.so.14.0.0: undefined reference to absl::lts_2020_09_23::FormatTime(absl::lts_2020_09_23::string_view, absl::lts_2020_09_23::Time, absl::lts_2020_09_23::TimeZone) ld: error: libgrpc.so.14.0.0: undefined reference to absl::lts_2020_09_23::BytesToHexString(absl::lts_2020_09_23::string_view) ld: error: libgrpc.so.14.0.0: undefined reference to absl::lts_2020_09_23::ParseTime(absl::lts_2020_09_23::string_view, absl::lts_2020_09_23::string_view, absl::lts_2020_09_23::Time*, std::__1::basic_string<char Comment Actions After rP559622, we have to build grpc with c++17. Please test https://people.FreeBSD.org/~sunpoet/patch/devel-grpc-v2.txt Comment Actions devel/grpc builds for me. But if any such failures due to abseil should be resolved after adding -std=c++17. Comment Actions I should add, I confirmed this on 12.1amd64. The others in 11/12 i386/amd64 are still running. Comment Actions Just waiting until 2021-01-07 for @amzo1337_gmail.com to approve. I may also drop devel/bear from the update. It has problems with v3.0.x that will take time to fix and should probably be addressed upstream. Comment Actions I only test build the new diff which succeeded. But I have not redone all runtime checks. |