Skip to content

Commit e88ab39

Browse files
ryanofskytheuni
andcommitted
doc: Update documentation to explain libmultiprocess subtree
Co-authored-by: Cory Fields <[email protected]>
1 parent d4bc563 commit e88ab39

File tree

2 files changed

+11
-2
lines changed

2 files changed

+11
-2
lines changed

doc/developer-notes.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1294,6 +1294,9 @@ Current subtrees include:
12941294
- src/minisketch
12951295
- Upstream at https://github.com/bitcoin-core/minisketch ; maintained by Core contributors.
12961296

1297+
- src/ipc/libmultiprocess
1298+
- Upstream at https://github.com/bitcoin-core/libmultiprocess ; maintained by Core contributors.
1299+
12971300
Upgrading LevelDB
12981301
---------------------
12991302

doc/multiprocess.md

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,11 @@ The `-debug=ipc` command line option can be used to see requests and responses b
1212

1313
## Installation
1414

15-
The multiprocess feature requires [Cap'n Proto](https://capnproto.org/) and [libmultiprocess](https://github.com/bitcoin-core/libmultiprocess) as dependencies. A simple way to get started using it without installing these dependencies manually is to use the [depends system](../depends) with the `MULTIPROCESS=1` [dependency option](../depends#dependency-options) passed to make:
15+
Specifying `-DENABLE_IPC=ON` requires [Cap'n Proto](https://capnproto.org/) to be installed. See [build-unix.md](build-unix.md) and [build-osx.md](build-osx.md) for information about installing dependencies.
16+
17+
### Depends installation
18+
19+
Alternately the [depends system](../depends) can be used to avoid need to install local dependencies. A simple way to get started is to pass the `MULTIPROCESS=1` [dependency option](../depends#dependency-options) to make:
1620

1721
```
1822
cd <BITCOIN_SOURCE_DIRECTORY>
@@ -27,7 +31,9 @@ BITCOIND=$(pwd)/build/bin/bitcoin-node build/test/functional/test_runner.py
2731

2832
The `cmake` build will pick up settings and library locations from the depends directory, so there is no need to pass `-DENABLE_IPC=ON` as a separate flag when using the depends system (it's controlled by the `MULTIPROCESS=1` option).
2933

30-
Alternately, you can install [Cap'n Proto](https://capnproto.org/) and [libmultiprocess](https://github.com/bitcoin-core/libmultiprocess) packages on your system, and just run `cmake -B build -DENABLE_IPC=ON` without using the depends system. The `cmake` build will be able to locate the installed packages via [pkg-config](https://www.freedesktop.org/wiki/Software/pkg-config/). See [Installation](https://github.com/bitcoin-core/libmultiprocess/blob/master/doc/install.md) section of the libmultiprocess readme for install steps. See [build-unix.md](build-unix.md) and [build-osx.md](build-osx.md) for information about installing dependencies in general.
34+
### Cross-compiling
35+
36+
When cross-compiling and not using depends, native code generation tools from [libmultiprocess](https://github.com/bitcoin-core/libmultiprocess) and [Cap'n Proto](https://capnproto.org/) are required. They can be passed to the cmake build by specifying `-DMPGEN_EXECUTABLE=/path/to/mpgen -DCAPNP_EXECUTABLE=/path/to/capnp -DCAPNPC_CXX_EXECUTABLE=/path/to/capnpc-c++` options.
3137

3238
## Usage
3339

0 commit comments

Comments
 (0)