Page MenuHomeFreeBSD

net-im/libquotient: Fix the build on FreeBSD releases with LLVM < 14
ClosedPublic

Authored by rakuco on Jul 15 2023, 8:37 PM.
Tags
None
Referenced Files
Unknown Object (File)
Sat, Feb 8, 4:19 AM
Unknown Object (File)
Tue, Jan 28, 8:38 PM
Unknown Object (File)
Thu, Jan 23, 3:25 PM
Unknown Object (File)
Wed, Jan 22, 3:03 PM
Unknown Object (File)
Tue, Jan 21, 11:09 PM
Unknown Object (File)
Jan 5 2025, 9:30 AM
Unknown Object (File)
Dec 27 2024, 4:29 AM
Unknown Object (File)
Dec 7 2024, 6:04 AM
Subscribers
None

Details

Summary

Older libc++ releases have a bug, https://reviews.llvm.org/D107199, that prevents connectSingleShot() in this port from working in certain cases. The current workaround was to just avoid compiling the test that caused the build to fail, but it does not fix the problem for consumer ports like net-im/neochat.

The easiest solution in this case is to make the port fall back to a code path that does not use std::bind_front() on FreeBSD versions with older LLVM releases.

Test Plan

The port built fine on 12.4-i386 (LLVM 13.0.0), 13.2-amd64 (LLVM 14.0.3) and 14-amd64 (LLVM 16). I didn't bother to test 13.1 because it's going EOL at the end of the month anyway.

net-im/neochat also built fine on all the platforms above (with a few more changes on 12.4).

Diff Detail

Lint
Lint Skipped
Unit
Tests Skipped

Event Timeline

rakuco created this revision.
This revision was not accepted when it landed; it landed in state Needs Review.Jul 16 2023, 1:06 PM
This revision was automatically updated to reflect the committed changes.