commit | 2458712c0b668322b005595470bc864dae9b47eb | [log] [tgz] |
---|---|---|
author | Colin Cross <ccross@android.com> | Tue Oct 11 10:01:29 2016 -0700 |
committer | Colin Cross <ccross@android.com> | Tue Oct 11 10:03:14 2016 -0700 |
tree | d65b4c5bda349ca06da9e783ee450b03fc273b41 | |
parent | 888b21f87bd38233c868eb07d7d74b474e73e3f0 [diff] |
Add dependency on build= blueprint files Blueprint files included with build= statements were not adding a dependency to cause regenerating when they were changed. Bug: 32085516 Test: touch external/boringssl/sources.bp && mmma -j external/boringssl Change-Id: Id4fdf3b6788ae5c1e94547dc63ec6b55424a66a0
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.