commit | 02611e894475879e2b254501619e299697a1647b | [log] [tgz] |
---|---|---|
author | Colin Cross <ccross@android.com> | Tue Apr 10 17:34:06 2018 -0700 |
committer | Colin Cross <ccross@android.com> | Thu Apr 26 15:10:12 2018 -0700 |
tree | a3831ad4f21e7ee5dc125ce937b4193e2e29223b | |
parent | db06ccbfa9d2c9470531b96f35201fdf1d5f0256 [diff] | |
parent | 148f9f316ee6f9c4a0af225912c1c7a5ab31b03e [diff] |
Merge remote-tracking branch 'aosp/upstream' into master * aosp/upstream: Add proptools.BoolDefault and proptools.StringDefault Reduce maximum goroutine count Add Patch and PatchList for making textual changes Make End() return the position after the node Bug: 78300023 Test: m checkbuild Change-Id: I70b44507135ed0c36458db0d4630402b6e8990bd Merged-In: I70b44507135ed0c36458db0d4630402b6e8990bd (cherry picked from commit b2e8a88c013496fdaa9a177eafbf0bf47e4721d2)
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.