commit | b3b9cb6ccc67a88bb33d359fb6b76f55b5d54ba5 | [log] [tgz] |
---|---|---|
author | Lukacs T. Berki <lberki@google.com> | Tue Mar 16 09:11:10 2021 +0100 |
committer | Lukacs T. Berki <lberki@google.com> | Wed Mar 17 14:08:47 2021 +0100 |
tree | c24c00f5b173a09c11a81ce441bab7d1c15f907e | |
parent | 7ea1c168fe103d9c7e247218ed916bea11618b55 [diff] |
Remove the GeneratingPrimaryBuilder() method. It's replaced with a flag in bootstrap.Args. It's a little bit ugly that bootstrap.Main also gained a new Boolean flag in the process. The plan is to delete that method in favor of directly calling RunBlueprint(). Test: "m nothing" (presubmits take a full workday these days) Change-Id: Iae3421ae517a90570259b6278f18c3614bb1bb73
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.