depends: Update libmultiprocess library to fix C++20 macos build error #29276

pull ryanofsky wants to merge 1 commits into bitcoin:master from ryanofsky:pr/c14 changing 1 files +2 −2
  1. ryanofsky commented at 8:16 PM on January 18, 2024: contributor

    Fixes #29248

    The std::result_of type was removed in c++20, but was being referenced in some old, unused code in the library. The issue was fixed in:

    This update also includes other recent libmultiprocess changes to improve C++20 support and fix build issues:

  2. DrahtBot commented at 8:16 PM on January 18, 2024: contributor

    <!--e57a25ab6845829454e8d69fc972939a-->

    The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.

    <!--006a51241073e994b41acfe9ec718e94-->

    Code Coverage

    For detailed information about the code coverage, see the test coverage report.

    <!--021abf342d371248e50ceaed478a90ca-->

    Reviews

    See the guideline for information on the review process.

    Type Reviewers
    ACK fanquake
    Concept ACK edilmedeiros
    Stale ACK jarolrod

    If your review is incorrectly listed, please react with 👎 to this comment and the bot will ignore it on the next update.

    <!--174a7506f384e20aa4161008e828411d-->

    Conflicts

    Reviewers, this pull request conflicts with the following ones:

    • #10102 (Multiprocess bitcoin by ryanofsky)

    If you consider this pull request important, please also help to review the conflicting pull requests. Ideally, start with the one that should be merged first.

  3. DrahtBot added the label Build system on Jan 18, 2024
  4. fanquake approved
  5. fanquake commented at 10:21 AM on January 19, 2024: member

    ACK 5dfd24581a7c5497601966a5371d8c33eabcee8a - thanks. Checked this fixes the macOS build. Also tested the build on aarch64.

  6. ryanofsky commented at 10:50 PM on January 19, 2024: contributor

    There is another macos issue I'm debugging here: https://github.com/chaincodelabs/libmultiprocess/issues/92 and I don't think it shows up in depends builds because the depends build skips tests. But it might trigger errors in bitcoin builds if more code from #10102 is merged.

    There is no need to hold off on this PR, but if it is not merged, I will probably update it again with whatever the fix is for https://github.com/chaincodelabs/libmultiprocess/issues/92

    I probably need to figure out a better way of doing CI to catch these issues.

  7. jarolrod commented at 8:27 AM on January 20, 2024: member

    ACK 5dfd24581a7c5497601966a5371d8c33eabcee8a

    This fixes the build issue.

  8. depends: Update libmultiprocess library to fix C++20 macos build error
    Fixes #29248
    
    The std::result_of type was removed in c++20, but was being referenced in some
    old, unused code in the library. The issue was fixed in:
    
    https://github.com/chaincodelabs/libmultiprocess/pull/91 util: Drop Bind, BindTuple, ComposeFn, GetFn, and ThrowFn helpers
    
    This update also includes other recent libmultiprocess changes to improve C++20
    support and fix build issues:
    
    https://github.com/chaincodelabs/libmultiprocess/pull/89 pkgconfig: Drop -std=c++17 compile flag
    https://github.com/chaincodelabs/libmultiprocess/pull/90 pkgconfig: Use @CMAKE_INSTALL_LIBDIR@ variable
    https://github.com/chaincodelabs/libmultiprocess/pull/93 Fix support for vector<bool> serialization with libc++
    b8105b3ed7
  9. ryanofsky force-pushed on Jan 22, 2024
  10. ryanofsky commented at 4:54 PM on January 22, 2024: contributor

    Updated 5dfd24581a7c5497601966a5371d8c33eabcee8a -> b8105b3ed7c97cd6545dba99d0e13c33f183e450 (pr/c14.1 -> pr/c14.2, compare) just adding a new macos build fix: https://github.com/chaincodelabs/libmultiprocess/pull/93.

    I'm pretty sure the new fix is not needed for any current depends builds because depends builds skip tests, but since code in #10102 does need the fix, it could potentially help review of that code if the fix is in place now. Sorry for the churn.

  11. edilmedeiros commented at 1:12 AM on January 23, 2024: contributor

    Tested ACK.

    I was watching the issue in chaincodelabs/libmultiprocess#92 and confirmed the fix in chaincodelabs/libmultiprocess#93.

    I built and executed bitcoin-core tests with this PR following the official setup with Brew.

    I could not compile this with dependencies coming from Macports, but the issue seems to be not related to the fix here as it does not compile either with --disable-multiprocess (I understand Macports is not supported anyhow, see #15175).

  12. fanquake approved
  13. fanquake commented at 5:06 PM on January 23, 2024: member

    ACK b8105b3ed7c97cd6545dba99d0e13c33f183e450.

  14. DrahtBot requested review from jarolrod on Jan 23, 2024
  15. fanquake merged this on Jan 23, 2024
  16. fanquake closed this on Jan 23, 2024

  17. PastaPastaPasta referenced this in commit fcb0d3ccf4 on Sep 27, 2024
  18. PastaPastaPasta referenced this in commit c7e42416ff on Sep 27, 2024
  19. PastaPastaPasta referenced this in commit 2758ba8cd9 on Sep 27, 2024
  20. PastaPastaPasta referenced this in commit 914582ecbd on Sep 28, 2024
  21. PastaPastaPasta referenced this in commit 7a63c20c47 on Oct 1, 2024
  22. PastaPastaPasta referenced this in commit 7c0d44c13c on Oct 3, 2024
  23. bitcoin locked this on Jan 22, 2025

github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2026-04-25 00:13 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me