commit | 613013cb824f3464774ebf70367f75e7f83dc0ce | [log] [tgz] |
---|---|---|
author | Dan Willemsen <dwillemsen@google.com> | Tue Feb 27 14:06:41 2018 -0800 |
committer | Dan Willemsen <dwillemsen@google.com> | Tue Feb 27 14:06:41 2018 -0800 |
tree | 41c3482a1e252d81bd490abf1957db3e11ef2067 | |
parent | da809330f8354b84a29921e94ae95ab8a771b56f [diff] | |
parent | 774db4a8aa120621912768d51d009359bd8fa8f5 [diff] |
Merge remote-tracking branch 'aosp/upstream' into master * aosp/upstream: Support go1.10 Test: m blueprint_tools Change-Id: Idddca7f1cd388ff61c52baf4580c1de60eba675b
Blueprint is a meta-build system that reads in Blueprints files that describe modules that need to be built, and produces a Ninja manifest describing the commands that need to be run and their dependencies. Where most build systems use built-in rules or a domain-specific language to describe the logic for converting module descriptions to build rules, Blueprint delegates this to per-project build logic written in Go. For large, heterogenous projects this allows the inherent complexity of the build logic to be maintained in a high-level language, while still allowing simple changes to individual modules by modifying easy to understand Blueprints files.