diff options
author | dpranke <dpranke@chromium.org> | 2015-04-08 09:20:35 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-04-08 16:21:17 +0000 |
commit | fe4602310d2a93867c24dbd28447a26fb991540f (patch) | |
tree | 9cde6167a80e2c273771161936eae995c3ea473f /tools/mb/README.md | |
parent | 56312cdf58df182ce892e333c99c54090edd8593 (diff) | |
download | chromium_src-fe4602310d2a93867c24dbd28447a26fb991540f.zip chromium_src-fe4602310d2a93867c24dbd28447a26fb991540f.tar.gz chromium_src-fe4602310d2a93867c24dbd28447a26fb991540f.tar.bz2 |
Implement mb - a meta-build wrapper for bots to use in the GYP->GN migration.
This CL implements a new tool called mb (//tools/mb) that wraps both GYP
and GN to implement the 'gen' and 'analyze' steps on the bots. It
serves three purposes:
1. To move the decision to use GYP or GN to generate the build files to
a configuration stored in the repo (and to hide it from the bots).
2. To move which flags are used to a configuration stored in the repo,
so that we can version the flags alongside the code, and change the
flags without needing to change things in the build repo.
3. To consolidate a list of all of the different build configs we need
to support and verify for the GYP->GN migration.
For more details on the above, see //tools/md/README.md and the linked
docs.
R=scottmg@chromium.org, brettw@chromium.org
BUG=466436
Review URL: https://codereview.chromium.org/1062613004
Cr-Commit-Position: refs/heads/master@{#324231}
Diffstat (limited to 'tools/mb/README.md')
-rw-r--r-- | tools/mb/README.md | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/tools/mb/README.md b/tools/mb/README.md new file mode 100644 index 0000000..beba946 --- /dev/null +++ b/tools/mb/README.md @@ -0,0 +1,22 @@ +# MB - The Meta-Build wrapper + +MB is a simple wrapper intended to provide a uniform interface to either +GYP or GN, such that users and bots can call one script and not need to +worry about whether a given bot is meant to use GN or GYP. + +It supports two main functions: + +1. "gen" - the main `gyp_chromium` / `gn gen` invocation that generates the + Ninja files needed for the build. + +2. "analyze" - the step that takes a list of modified files and a list of + desired targets and reports which targets will need to be rebuilt. + +We also use MB as a forcing function to collect all of the different +build configurations that we actually support for Chromium builds into +one place, in `//tools/mb/mb_config.pyl`. + +For more information, see: + +* [the user guide](docs/user_guide.md) +* [the design spec](docs/design_spec.md) |