commit | bafd5f5a2b0718fd6dadf2cd0c8edaaf5075a39b | [log] [tgz] |
---|---|---|
author | Colin Cross <ccross@android.com> | Sat Aug 06 22:52:01 2016 -0700 |
committer | Colin Cross <ccross@android.com> | Mon Aug 08 17:30:38 2016 -0700 |
tree | b50f4ee09982bada222a0172238cfcab9121158b | |
parent | 365bc6b3ea229a5fd3ee47f6cbe4fde2f7440164 [diff] |
Reimplement VisitDirectDeps[If] in on Context.walkdeps VisitDirectDeps[If] need to know the parent in order to support OtherModuleDependencyTag(), remove Context.visitDirectDeps[If] and reimplement [Module]Context.VisitDirectDeps[If] using Context.walkdeps. Change-Id: I2faac2d100d2a0ad2a4f1d8250997eed1a7ef6f0 Test: TestVisit
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.