Merge Chromium + Blink git repositories
[chromium-blink-merge.git] / tools / gn / docs / update_binaries.md
blob2ef502e191628500d7fca71ff697caf2bb1373be
1 # How to update the [GN binaries](gn.md) that Chromium uses.
3 ## Prerequisites
5 You'll need a checkout of Chromium, and commit access to the
6 `buildtools/` repo. Check with scottmg, thakis, brettw, dpranke, or a
7 member of chrome-infra to get access to that repo.
9 ## Instructions
11 _Hopefully there will be a script that does this all for you shortly._
13   1. cd to your Chromium checkout.
14   2. Create a whitespace change in DEPS and upload it to create a "dummy" CL
15   3. Run the following commands:
16     1. git-cl try -b linux\_chromium\_gn\_upload\_x86
17        -b linux\_chromium\_gn\_upload\_x64
18        -r $GIT\_REVISION\_YOU\_WANT\_TO\_BUILD
19     2. git-cl try -b mac\_chromium\_gn\_upload
20        -r $GIT\_REVISION\_YOU\_WANT\_TO\_BUILD
21     3. git-cl try -b win8\_chromium\_gn\_upload
22        -r $GIT\_REVISION\_YOU\_WANT\_TO\_BUILD
23   4. Wait for the try jobs to finish.
24   5. If they all ran successfully, copy the digests from the tryjob build
25      log output into `src/buildtools/{mac,linux32,linux64}gn.sha1` and
26      `src/buildtools/win/gn.exe.sha1` as appropriate.
27   6. Upload a buildtools CL with the updated digests and get it reviewed
28      and committed. Make sure you note the revision of GN that you built
29      against in the commit message.
30   7. Go back to your "dummy" CL w/ the change to the DEPS file in src/
31      and update the buildtools revision to your newly-committed
32      buildtools change.
33   8. Get that reviewed and landed in Chromium. Make sure you note the
34      revision of GN that you built against in the commit message, along
35      with the revision of buildtools that you're rolling to.