Cobble is a simple build system for modular software. It acts as a frontend for Ninja and makes certain types of relationships easier to express. I built it to scratch a specific itch: programs that need to compile the same code in several different environments without any risk of confusing the outputs. This is particularly common in complex distributed firmware systems, of the sort I supported on Loon.
Source - on GitHub.
Simple Example - a tutorial that demonstrates the basic features of Cobble in the context of a “hello, world” program.
Core Concepts - an introduction to how Cobble works and why it’s so freakishly flexible.
C Production Model - why building C is tricky, and how Cobble approaches it.
C Syntax Reference - what the
BUILDfiles for C actually mean.
General Syntax Reference - common elements across target types.