QtSkia / buildtools

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

This repository contains hashes of build tools used by Chromium and related
projects. The actual binaries are pulled from Google Storage, normally as part
of a gclient hook.

The repository is separate so that the shared build tools can be shared between
the various Chromium-related projects without each one needing to maintain
their own versionining of each binary.

To update the GN binary, run (from the Chromium repo) tools/gn/bin/roll_gn.py
which will automatically upload the binaries and roll build tools.

________________________________________
UPDATING AND ROLLING BUILDTOOLS MANUALLY

When you update buildtools, you should roll the new version into the Chromium
repository right away. Otherwise, the next person who makes a change will end
up rolling (and testing) your change. If there are any unresolved problems with
your change, the next person will be blocked.

  - From the buildtools directory, make a branch, edit and upload normally.

  - Get your change reviewed and landed. There are no trybots so landing will
    be very fast.

  - Get the hash for the commit that commit-bot made. Make a new branch in
    the Chromium repository and paste the hash into the line in //DEPS
    labeled "buildtools_revision".

  - You can TBR changes to the DEPS file since the git hashes can't be reviewed
    in any practical way. Submit that patch to the commit queue.

  - If this roll identifies a problem with your patch, fix it promptly. If you
    are unable to fix it promptly, it's best to revert your buildtools patch
    to avoid blocking other people that want to make changes.

________________________
ADDING BINARIES MANUALLY

One uploads new versions of the tools using the 'gsutil' binary from the
Google Storage SDK:

  https://developers.google.com/storage/docs/gsutil

There is a checked-in version of gsutil as part of depot_tools.

To initialize gsutil's credentials:

  python ~/depot_tools/third_party/gsutil/gsutil config

  That will give a URL which you should log into with your web browser. For
  rolling GN, the username should be the one that is on the ACL for the
  "chromium-gn" bucket (probably your @google.com address). Contact the build
  team for help getting access if necessary.

  Copy the code back to the command line util. Ignore the project ID (it's OK
  to just leave blank when prompted).

About

License:BSD 3-Clause "New" or "Revised" License


Languages

Language:Python 100.0%