commit | 3ddcf64a362aa4b79e6b950901cd6dacc4dfabb1 | [log] [tgz] |
---|---|---|
author | Scott Graham <scottmg@chromium.org> | Fri Jun 29 10:25:10 2018 -0700 |
committer | Commit Bot <commit-bot@chromium.org> | Fri Jun 29 17:57:31 2018 +0000 |
tree | 62f639ca14c226b82a9d41ca88bdc92cf5653e6e | |
parent | 4cf8d1531a3980554937f96b50bf5db97aaf7925 [diff] |
Make gn --version work Because GN_BUILD wasn't defined, gn --version was silently "UNKNOWN". Implement a --version similar to the version that was used in Chromium by using the number of commits on master + a fixed base larger than the last commit position in Chromium. This will only really be meaningful when built by the bots, but that's probably OK. Change-Id: I744e2ae48cefd80eeb8d352ad67eda9daaac2385 Reviewed-on: https://gn-review.googlesource.com/1980 Reviewed-by: Brett Wilson <brettw@chromium.org> Commit-Queue: Scott Graham <scottmg@chromium.org>
GN is a meta-build system that generates build files for Ninja.
git clone https://gn.googlesource.com/gn cd gn python build/gen.py ninja -C out
On Windows, it is expected that cl.exe
, link.exe
, and lib.exe
can be found in PATH
, so you'll want to run from a Visual Studio command prompt, or similar.
On Linux and Mac, the default compiler is clang++
, a recent version is expected to be found in PATH
. This can be overridden by setting CC
, CXX
, and AR
.
GN uses Gerrit for code review. The short version of how to patch is:
... edit code ... ninja -C out && out/gn_unittests
Then, to upload a change for review:
git commit git push origin HEAD:refs/for/master # This uploads for review.
When revising a change, use:
git commit --amend git push origin HEAD:refs/for/master
which will add the new changes to the existing code review, rather than creating a new one.
TODO: AUTHORS, CLA, etc.