|
The current setup relies (incompletely) on icerun at the SCons level, but the Ninja level also has a local_pool. Sizing the local pool is non-obviously tied to the SCons concurrency level set at Ninja generation time. But application of the local_pool isn't automatic. The situation is muddled, and we should come up with something better that:
- Works right both with plain SCons and with the generated Ninja
- Doesn't statically interpolate SCons concurrency guarantees into the generated Ninja file.
- Ensures consistent application of icerun in the SCons layer in a way that is reflected in the Ninja layer.
- Would provide an API that allowed partitioning jobs into local/remote in such a way that the build could still be made reasonable even in the absence of a tool like icerun.
|