Make WebRTC work with Chromium Git checkouts

WebRTC standalone shares a lot of dependencies and build
tools with Chromium. To make the build work, many of the
paths of a Chromium checkout is now emulated by creating
symlinks to files and directories.

All DEPS entries that previously used Var("chromium_trunk")
to reference a Chromium checkout or From("chromium_deps"..)
to reference the Chromium DEPS file are now removed and
replaced by symlink entries in setup_links.py.

The script also handles cleanup of the legacy
Subversion-based dependencies that's needed for the
transition.

Windows: One Windows-specific important change is that
gclient sync|runhooks must now be run from a shell
with Administrator privileges in order to be able to create
symlinks. This also means that Windows XP is no longer
supported.

To transition a previously created checkout:
Run "python setup_links.py --force" to cleanup the old
SVN-based dependencies that have been synced by gclient sync.
For Buildbots, the --force flag is automatically enabled for
their syncs.

BUG=2863, chromium:339647
TEST=Manual testing on Linux, Mac and Windows.
R=andrew@webrtc.org, iannucci@chromium.org, phoglund@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/18379005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6938 4adac7df-926f-26a2-2b94-8c16560cd09d
This commit is contained in:
kjellander@webrtc.org
2014-08-20 12:10:11 +00:00
parent 3fb2d0cd0e
commit 8925662318
8 changed files with 602 additions and 365 deletions

1
PRESUBMIT.py Normal file → Executable file
View File

@@ -123,6 +123,7 @@ def _CommonChecks(input_api, output_api):
# Embedded shell-script fakes out pylint.
r'^build/.*\.py$',
r'^buildtools/.*\.py$',
r'^chromium/.*\.py$',
r'^out.*/.*\.py$',
r'^talk/site_scons/site_tools/talk_linux.py$',
r'^testing/.*\.py$',