README.txt 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. This repository contains hashes of build tools used by Chromium and related
  2. projects. The actual binaries are pulled from Google Storage, normally as part
  3. of a gclient hook.
  4. The repository is separate so that the shared build tools can be shared between
  5. the various Chromium-related projects without each one needing to maintain
  6. their own versionining of each binary.
  7. To update the GN binary, run (from the Chromium repo) tools/gn/bin/roll_gn.py
  8. which will automatically upload the binaries and roll build tools.
  9. ________________________________________
  10. UPDATING AND ROLLING BUILDTOOLS MANUALLY
  11. When you update buildtools, you should roll the new version into the Chromium
  12. repository right away. Otherwise, the next person who makes a change will end
  13. up rolling (and testing) your change. If there are any unresolved problems with
  14. your change, the next person will be blocked.
  15. - From the buildtools directory, make a branch, edit and upload normally.
  16. - Get your change reviewed and landed. There are no trybots so landing will
  17. be very fast.
  18. - Get the hash for the commit that commit-bot made. Make a new branch in
  19. the Chromium repository and paste the hash into the line in //DEPS
  20. labeled "buildtools_revision".
  21. - You can TBR changes to the DEPS file since the git hashes can't be reviewed
  22. in any practical way. Submit that patch to the commit queue.
  23. - If this roll identifies a problem with your patch, fix it promptly. If you
  24. are unable to fix it promptly, it's best to revert your buildtools patch
  25. to avoid blocking other people that want to make changes.
  26. ________________________
  27. ADDING BINARIES MANUALLY
  28. One uploads new versions of the tools using the 'gsutil' binary from the
  29. Google Storage SDK:
  30. https://developers.google.com/storage/docs/gsutil
  31. There is a checked-in version of gsutil as part of depot_tools.
  32. To initialize gsutil's credentials:
  33. python ~/depot_tools/third_party/gsutil/gsutil config
  34. That will give a URL which you should log into with your web browser. For
  35. rolling GN, the username should be the one that is on the ACL for the
  36. "chromium-gn" bucket (probably your @google.com address). Contact the build
  37. team for help getting access if necessary.
  38. Copy the code back to the command line util. Ignore the project ID (it's OK
  39. to just leave blank when prompted).