apple / apple/foundationdb

Link + strip binaries in parallel

Open
#2,953 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
16.7k
Forks
1.6k
Avg merge
1d 20h
Merged PRs (30d)
126

Description

The FDB binaries are being linked + stripped one at a time by the Ninja. To reproduce:
```bash
ninja clean
ninja strip_targets # builds all, then all the binaries, then strips them.
```
and watch top at the end of the build process.

With ccache and distcc, the linking and stripping step dominates the compilation time for incremental builds.

Contributor guide

Open the contributing guide

Research direction

Start by locating the Ninja rules and dependency graph behind `strip_targets`, then reproduce with `ninja clean` followed by `ninja strip_targets` while observing the final build in `top`. Verify that linking and stripping independent FDB binaries can run concurrently and that the target still completes correctly with ccache and distcc.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
build-system, performance
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.