Skip to content

Conversation

@fanquake
Copy link
Member

Fixes:

mp/util.h:207:20: error: no template named 'function' in namespace 'std'; did you mean 'kj::Function'?
  207 | using FdToArgsFn = std::function<std::vector<std::string>(int fd)>;
      |                    ^~~~~~~~~~~~~
      |                    kj::Function

when compiling with libc++ & _LIBCPP_REMOVE_TRANSITIVE_INCLUDES.

Fixes:
```bash
mp/util.h:207:20: error: no template named 'function' in namespace 'std'; did you mean 'kj::Function'?
  207 | using FdToArgsFn = std::function<std::vector<std::string>(int fd)>;
      |                    ^~~~~~~~~~~~~
      |                    kj::Function
```
when compiling with libc++ & `_LIBCPP_REMOVE_TRANSITIVE_INCLUDES`.
Copy link
Member

@hebasto hebasto left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ACK 6929c40, tested on Ubuntu 23.10 by building Bitcoin Core with depends using the following patch:

--- a/depends/packages/native_libmultiprocess.mk
+++ b/depends/packages/native_libmultiprocess.mk
@@ -1,8 +1,8 @@
 package=native_libmultiprocess
-$(package)_version=015e95f7ebaa47619a213a19801e7fffafc56864
-$(package)_download_path=https://github.com/chaincodelabs/libmultiprocess/archive
+$(package)_version=6929c40913ce2bbee58754f2984ddd7ec97b44ea
+$(package)_download_path=https://github.com/fanquake/libmultiprocess/archive
 $(package)_file_name=$($(package)_version).tar.gz
-$(package)_sha256_hash=4b1266b121337f3f6f37e1863fba91c1a5ee9ad126bcffc6fe6b9ca47ad050a1
+$(package)_sha256_hash=e0aab3166ca902e7b255b4e1766c71c5e99170534ae412136e4133d4f85745d7
 $(package)_dependencies=native_capnp
 
 define $(package)_config_cmds

and the following command:

$ make -C depends CC="clang" CXX="clang++ -stdlib=libc++" CPPFLAGS="-D_LIBCPP_REMOVE_TRANSITIVE_INCLUDES" MULTIPROCESS=1 libmultiprocess

@ryanofsky
Copy link
Collaborator

Code review ACK 6929c40, thanks for the fix

@ryanofsky ryanofsky merged commit a4ac424 into bitcoin-core:master Sep 30, 2024
Sjors added a commit to Sjors/bitcoin that referenced this pull request Oct 1, 2024
This update brings in the following changes:
bitcoin-core/libmultiprocess#111: doc: Add internal design section
bitcoin-core/libmultiprocess#113 Add missing include to util.h
Sjors added a commit to Sjors/bitcoin that referenced this pull request Oct 4, 2024
This update brings in the following changes:
bitcoin-core/libmultiprocess#111: doc: Add internal design section
bitcoin-core/libmultiprocess#113 Add missing include to util.h
Sjors added a commit to Sjors/bitcoin that referenced this pull request Oct 4, 2024
This update brings in the following changes:
bitcoin-core/libmultiprocess#111: doc: Add internal design section
bitcoin-core/libmultiprocess#113 Add missing include to util.h
Sjors added a commit to Sjors/bitcoin that referenced this pull request Oct 5, 2024
This update brings in the following changes:
bitcoin-core/libmultiprocess#111: doc: Add internal design section
bitcoin-core/libmultiprocess#113 Add missing include to util.h
Sjors added a commit to Sjors/bitcoin that referenced this pull request Oct 7, 2024
This update brings in the following changes:
bitcoin-core/libmultiprocess#111: doc: Add internal design section
bitcoin-core/libmultiprocess#113 Add missing include to util.h
ryanofsky added a commit to ryanofsky/bitcoin that referenced this pull request Oct 8, 2024
Add recent changes and fixes for shutdown bugs:

bitcoin-core/libmultiprocess#111: doc: Add internal design section
bitcoin-core/libmultiprocess#113: Add missing include to util.h
bitcoin-core/libmultiprocess#116: shutdown bugfix: destroy RPC system before running cleanup callbacks
bitcoin-core/libmultiprocess#118: shutdown bugfix: Prevent segfault in server if connection is broken during long function call
ryanofsky added a commit to ryanofsky/bitcoin that referenced this pull request Oct 8, 2024
Add recent changes and fixes for shutdown bugs:

bitcoin-core/libmultiprocess#111: doc: Add internal design section
bitcoin-core/libmultiprocess#113: Add missing include to util.h
bitcoin-core/libmultiprocess#116: shutdown bugfix: destroy RPC system before running cleanup callbacks
bitcoin-core/libmultiprocess#118: shutdown bugfix: Prevent segfault in server if connection is broken during long function call
ryanofsky added a commit to ryanofsky/bitcoin that referenced this pull request Oct 16, 2024
Add recent changes and fixes for shutdown bugs.

bitcoin-core/libmultiprocess#111: doc: Add internal design section
bitcoin-core/libmultiprocess#113: Add missing include to util.h
bitcoin-core/libmultiprocess#116: shutdown bugfix: destroy RPC system before running cleanup callbacks
bitcoin-core/libmultiprocess#118: shutdown bugfix: Prevent segfault in server if connection is broken during long function call
bitcoin-core/libmultiprocess#119: cmake: avoid libatomic not found error on debian
fanquake added a commit to bitcoin/bitcoin that referenced this pull request Oct 21, 2024
90b4055 Update libmultiprocess library (Ryan Ofsky)

Pull request description:

  Add recent changes and fixes for shutdown bugs.

  bitcoin-core/libmultiprocess#111: doc: Add internal design section
  bitcoin-core/libmultiprocess#113: Add missing include to util.h
  bitcoin-core/libmultiprocess#116: shutdown bugfix: destroy RPC system before running cleanup callbacks
  bitcoin-core/libmultiprocess#118: shutdown bugfix: Prevent segfault in server if connection is broken during long function call
  bitcoin-core/libmultiprocess#119: cmake: avoid libatomic not found error on debian

ACKs for top commit:
  fanquake:
    ACK 90b4055
  TheCharlatan:
    ACK 90b4055

Tree-SHA512: 2c256667f0c16e00bb5a81b2c6d3db103fae211844e32b111bbed673ab2612ad1478e6b3ecd3a867a4e425cfa6e778b67388343626597a8fac800a15cea5e53a
janus pushed a commit to BitgesellOfficial/bitgesell that referenced this pull request Jan 19, 2025
Add recent changes and fixes for shutdown bugs.

bitcoin-core/libmultiprocess#111: doc: Add internal design section
bitcoin-core/libmultiprocess#113: Add missing include to util.h
bitcoin-core/libmultiprocess#116: shutdown bugfix: destroy RPC system before running cleanup callbacks
bitcoin-core/libmultiprocess#118: shutdown bugfix: Prevent segfault in server if connection is broken during long function call
bitcoin-core/libmultiprocess#119: cmake: avoid libatomic not found error on debian
@bitcoin-core bitcoin-core locked and limited conversation to collaborators Sep 30, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants