ElementsProject / ElementsProject/lightning

Support selective plugin builds by passing an array of plugins to `make`

Open
#8,359 0 comments 1 reaction 0 assignees View on GitHub
Highlight - UX and Dev Experience plugin rust
Dominant language
C
Stars
3.1k
Forks
1k
Avg merge
4d 10h
Merged PRs (30d)
13

Description

Currently, `make` builds all plugins defined in Cargo.toml’s workspace, even when only a subset is needed. This increases build time unnecessarily, especially for users who only require specific plugins.

We can pass an argument to `make` that accepts a space-separated list of plugins to compile, skipping unnecessary ones.

Example Usage:
```bash
# Build only grpc and rest plugins
make RUST_PLUGINS="cln-grpc-plugin clnrest"

# Default: build all plugins if none specified
make
```

Reference:
By "Hosted Marcellus" on Discord:
```
Recent versions of CLN take a very long time to build in my VPS due to the Rust binaries.
Of these I'm only really interested in cln-rest, is there any way to tell the build process to
not try to build the others?

Currently I'm just doing "make RUST_PROFILE=release"
```

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.