kjellander a013a02e01 MB: Copy MB from Chromium repo
Essentially a copy of https://codereview.chromium.org/2299953002/
plus changes to WebRTC's license, changed OWNERS and additional
MB updates up to Chromium revision http://crrev.com/f1e2718a3ff.

The PRESUBMIT.py check was updated to use the existing
webrtc/build/mb_config.pyl to avoid breaking bots (that have
this path hardcoded).

This replaces the previously symlinked MB, which already
runs validation of the WebRTC configs as part of
webrtc/build/PRESUBMIT.py.

BUG=chromium:664425
NOTRY=True
TESTED=Ran:
tools/mb/mb.py gen -m client.webrtc -b 'Mac64 Release' --config-file webrtc/build/mb_config.pyl --isolate-map-file=webrtc/build/gn_isolate_map.pyl --gyp-script=webrtc/build/gyp_webrtc.py //out/Release

Review-Url: https://codereview.webrtc.org/2306163002
Cr-Commit-Position: refs/heads/master@{#15068}
2016-11-14 13:54:29 +00:00
..
2016-11-14 13:54:29 +00:00
mb
2016-11-14 13:54:29 +00:00
2016-11-14 13:54:29 +00:00
2016-11-14 13:54:29 +00:00
2016-11-14 13:54:29 +00:00
2016-11-14 13:54:29 +00:00
2016-11-14 13:54:29 +00:00
2016-11-14 13:54:29 +00:00

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: