commit | 096dd2260cb20b33e74da86b712771784348599a | [log] [tgz] |
---|---|---|
author | Scott Graham <scottmg@chromium.org> | Thu Jun 28 14:51:40 2018 -0700 |
committer | Commit Bot <commit-bot@chromium.org> | Fri Jun 29 00:03:54 2018 +0000 |
tree | f69f1fa7c76cedd7f8549ae028c5ef1917ddaccb | |
parent | 90dcf0c7c4d1365aa574faff5cc131ada7a95eb5 [diff] |
Attempt to reduce Linux deps lddtree output (sorted): 1. Before this CL: gn => out/gn (interpreter => /lib64/ld-linux-x86-64.so.2) ld-linux-x86-64.so.2 => /lib/x86_64-linux-gnu/ld-linux-x86-64.so.2 libatomic.so.1 => /usr/lib/x86_64-linux-gnu/libatomic.so.1 libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 2. With this CL: gn => out/gn (interpreter => /lib64/ld-linux-x86-64.so.2) ld-linux-x86-64.so.2 => /lib/x86_64-linux-gnu/ld-linux-x86-64.so.2 libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 3. Chrome's current buildtools: gn => /work/cr/src/buildtools/linux64/gn (interpreter => /lib64/ld-linux-x86-64.so.2) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 So, compared to current Chrome buildtools, this removes the dependency on librt.so.1, but still has a ld-linux-x86-64.so.2 dependency. A bunch are removed that were problematic since the last attempt to roll into Chromium. Per https://bugs.chromium.org/p/chromium/issues/detail?id=855791#c38 I am hopeful that this will not cause problems. Change-Id: I3c47339ceffd5d34ae3aa8f5b201fd6d8b43977a Reviewed-on: https://gn-review.googlesource.com/1940 Reviewed-by: Scott Graham <scottmg@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.