commit | de4d4d1523525aad1e124fd24f54481d99fbfc76 | [log] [tgz] |
---|---|---|
author | Colin Cross <ccross@android.com> | Mon Jul 22 16:06:20 2019 -0700 |
committer | android-build-merger <android-build-merger@google.com> | Mon Jul 22 16:06:20 2019 -0700 |
tree | 22e2bee6e2b0f30bd1bf10a95d50452e1686045b | |
parent | fd87ba76ecb74af9c75bd0071e5083dd44451331 [diff] | |
parent | 9ad3a14e17238527c3ce466c8a10a93186f2ff96 [diff] |
Merge remote-tracking branch 'aosp/upstream' into master am: c23756ff58 am: 247f010e2d am: 9ad3a14e17 Change-Id: I0d0a1501e987e00911ca7ca1c122a2775b2c4767
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.