commit | 49f0b30730cb25f63edbb2a18d261e1477bfd0c9 | [log] [tgz] |
---|---|---|
author | android-build-team Robot <android-build-team-robot@google.com> | Tue Jun 27 07:30:09 2017 +0000 |
committer | android-build-team Robot <android-build-team-robot@google.com> | Tue Jun 27 07:30:09 2017 +0000 |
tree | dabd05c105004d1690775c3f4ff104fe63fbc4b5 | |
parent | 8bdfeebdabdd9f555b9bc76f18424355c071f1c2 [diff] | |
parent | e395c1e121aa32239d3dd95741498d9346e0ba84 [diff] |
release-request-fc66b004-9a6d-499c-b541-7c17163fe60f-for-git_oc-dr1-release-4136913 snap-temp-L82300000077883774 Change-Id: I854d51f8eabdba895a493f290c70ce7d63041eba
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.