Commit Graph

19 Commits

Author SHA1 Message Date
Henrik Kjellander
05ce5dd0f1 Roll chromium_revision e937e5f..c2239a8 (333350:334133)
Removed no longer used test_isolation_outdir variable as in
https://codereview.chromium.org/1176463003

The move of a DEPS in https://codereview.chromium.org/1155743013
is causing problems on some trybots. It shouldn't affect developers.

Relevant changes:
* src/third_party/android_tools: a3afc68..ed3dde6
* src/third_party/icu: 9939a5d..a05f412
* src/third_party/libjpeg_turbo: 8ee9bdd..f4631b6
* src/third_party/libyuv: 632c50f..632c50f
Details: e937e5f..c2239a8/DEPS

Clang version was not updated in this roll.

BUG=
R=pbos@webrtc.org

Review URL: https://codereview.webrtc.org/1182043002.

Cr-Commit-Position: refs/heads/master@{#9435}
2015-06-15 09:10:25 +00:00
Henrik Kjellander
10ba3eec5a Roll chromium_revision a12e1e1..0cb2549 (326495:327252)
https://codereview.chromium.org/1051343002 adds a dependency
on Chromium's third_party/junit into base/ which affects our
Android tests that uses that code.

The precompiled JUnit 4.11 JAR file that is only by the
libjingle_peerconnection_java_unittest target on Linux has been
moved to third_party/junit-jar, since it collided with the expected
path for the JUnit dependency mentioned above.
It had to be kept since the Chromium JUnit is only possible to build
when OS==android.

This CL also brings in Mockito and Robolectric, which should be
useful for our Android tests.

Other relevant changes:
* src/buildtools: 3b302fe..15308f4
* src/third_party/libjpeg_turbo: 034e9a9..9e9058b
* src/third_party/libyuv: 32ad6e0..01db3d1
Details: a12e1e1..0cb2549/DEPS

Clang version was not updated in this roll.

BUG=4499
R=phoglund@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9113}
2015-04-29 12:48:00 +00:00
Henrik Kjellander
ae331349c6 Always specify current OS when syncing Chromium.
Recently, we've hit a rare case of a dependency being
present only below 'unix' and not in the 'android' section
of the DEPS file in Chromium (src/third_party/junit/src).

This exposed a bug in our sync_chromium.py script, which is that
when the --deps flag is passed to gclient sync, _only_ that platform
is processed. That means our Android builders synced with --deps=android
and thus only getting the Android deps, not the 'unix' ones (Linux).
That behavior is different from a regular gclient sync, where both
the current platform's DEPS and the one specified by appending a target_os
variable into .gclient is used.

Ensuring that we pass both the current platform and the optionally specified
DEPS platform into our sync_chromium.py sync, gives us the same behavior
as a regular sync for the special Chromium sync we use.

TESTED=
First:
rm chromium/.last_sync_chromium
Then I ran without this patch and with target_os = ["android"] in .gclient. Verified
that --deps=android was passed.
With this patch, I repeated the above and verified --deps=unix,android was passed.

R=phoglund@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9103}
2015-04-28 14:08:29 +00:00
Henrik Kjellander
b3fc48b28f Update the notice about the slow Chromium sync.
It's no longer valid to run 'git auto-svn' since we've
moved over to Git.

R=phoglund@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8880}
2015-03-27 13:25:44 +00:00
kjellander@webrtc.org
74304330df Print better information during Chromium sync.
Many users are having problems with the initial sync.
Let's print a bit more information and advice on how
to recover from an aborted sync.

R=phoglund@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8617}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8617 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-05 14:38:42 +00:00
kjellander@webrtc.org
bfdee69d48 Roll chromium_revision 9070a80..cd35af6 (313233:314322)
Relevant changes:
* src/third_party/boringssl/src: 347f025..be629e0
* src/third_party/libvpx: 5da40ca..5cdd302
* src/third_party/openmax_dl: 8f7bf0b..c01d587
* src/tools/gyp: b28bd7d..4d7c139
* src/tools/swarming_client: d863df3..c698ea2
Details: 9070a80..cd35af6/DEPS

Clang version was not updated in this roll.
webrtc_tests.py had to be updated to match changes in
https://codereview.chromium.org/882713002

A workaround for grit resources and the addition of V8 to the
Chromium checkout had to be done due to changed
dependencies caused by https://codereview.chromium.org/867073002

R=pbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8234}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8234 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-03 15:24:22 +00:00
kjellander@webrtc.org
7d4e6d012c Roll chromium_revision d8c9041..309cf65
Relevant changes:
* testing/gtest 4650552..8245545
* testing/gmock 896ba0e..2976396
* third_party/boringssl 2f3ba91..69a0160
* third_party/icu: 6242e2f..dd72764
* third_party/libyuv: 5a09c3e..d204db6
* tools/gyp: b13d8f2..0a381c0

Details: d8c9041..309cf65/DEPS

Clang version was not updated in this roll.

R=pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7757 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-27 10:41:04 +00:00
kjellander@webrtc.org
dde19a6f60 sync_chromium.py: Check for chromium/src
Make sure the script alwyas downloads Chromium
if there's no current download. This case can happen
if a user is removing the 'src' folder but doesn't know
to remove the .last_sync_chromium file.

BUG=
TESTED=Renamed chromium/src and ran a sync keeping the .last_sync_chromium file, verified it started downloading.
TBR=iannucci@chromium.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7738 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-24 10:08:03 +00:00
kjellander@webrtc.org
8539bd0184 Download full Chromium checkouts by default
This changes sync_chromium.py to download a full Chromium
checkout instead of one with no history. It has been noticed
that the download of the no-history checkout is very slow, even
when on high-speed internet connections, due to current limitations
in the Git backend serving these clones.
Switching to a full checkout is faster, but requires more bandwidth
and disk space.

To keep the old behavior, users must set the CHROMIUM_NO_HISTORY
environment variable to 1.

Using a full checkout also enables the use of the Chromium
infrastructure teams' Git cache functionality, that speeds up
the initial download and also heavily reduces the traffic when
setting up multiple checkouts on the same machine.
This is not enabled by default, but is supported if the user is
setting the cache_dir variable in his checkout's .gclient file to
point at a directory on local disk.

BUG=3882
TESTED=
* Ran gclient sync and verified chromium/src now contained a Git
repo with full history.
* Tested rolling chromium_revision in DEPS forward + sync.
* Tested rolling it back again + sync.
* Tested with an existing no-history checkout:
  CHROMIUM_NO_HISTORY=1 gclient sync
  No change was performed.
* Tested with a .gclient that had cache_dir configured.
* Verified error message is displayed when .gclient has cache_dir
  configured and CHROMIUM_NO_HISTORY=1.

R=iannucci@chromium.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7506 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-10-23 12:17:58 +00:00
kjellander@webrtc.org
6c6680a9d4 Cleanup .gclient.bot_entries to avoid sync problems on bots.
In https://webrtc-codereview.appspot.com/28509004 the buildbot
case was missed since they get a gclient entries file named
.gclient.bot_entries instead of the regular .gclient_entries
file due to the way the sync was implemented for buildbots.

This change makes the right file get wiped in the two cases.

BUG=
TBR=agable@chromium.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7314 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-27 18:41:03 +00:00
kjellander@webrtc.org
e94f83a191 Cleanup .gclient_entries to avoid sync problems.
The .gclient_entries file is written after a successful
gclient sync operation and contains paths mapped to URLs for
all DEPS entries that have been synced.
This has been causing problems for users when switching from
the legacy Subversion based checkouts to the new DEPS approach
using a Chromium Git checkout combined with symlinks.

Also it has been discovered that when entries have been
removed from the Chromium DEPS file, subsequent gclient sync
operations fail when it's trying to process those directories.

This CL changes so that .gclient_entries is wiped for the WebRTC
checkout when moving from the legacy SVN to Git.
It also wipes the chromium/.gclient_entries file when a new Chromium
revision is about to be synced, to avoid problems when DEPS entries
have been removed.

BUG=415219
R=agable@chromium.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7222 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-18 13:47:23 +00:00
kjellander@webrtc.org
dc926a000e Avoid syncing unnecessary Chromium deps for WebRTC.
This should save several gigabytes of traffic and disk space.

On Linux this is about 2.6 GB:
346M	src/chrome/tools/test/reference_build
340M	src/native_client
170M	src/third_party/ffmpeg
1.5G	src/third_party/WebKit
196M	src/v8

BUG=2863
TESTED=Removed the directories locally, ran a sync and verified they didn't reappear (or fail because of platform-specific ones).
R=iannucci@chromium.org, niklas.enbom@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6984 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-08-26 19:22:03 +00:00
kjellander@webrtc.org
374d39b7ae Increment sync_chromium.py version to force re-sync
This should make the remaining red Windows bots cycle green.
Currently, some of them are in a bad state for the Chromium
checkout.

BUG=webrtc:2863
TBR=niklas.enbom@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6953 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-08-21 19:51:06 +00:00
iannucci@chromium.org
161363808b Make the last_sync_chromium file a bit more comprehensive.
Adds a SCRIPT_VERSION and the target_os_list to the flag file content. The
script version is so that we can arbitrarially make all slaves/devs re-sync (in
case we change the implementation but don't want to roll chromium), and the
target_os_list is so that devs who change the target_os_list in their .gclient
file don't mysteriously fail to get the new deps.

R=kjellander@webrtc.org, agable@chromium.org, szager@chromium.org
BUG=2863, chromium:339647

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6952 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-08-21 15:48:23 +00:00
iannucci@chromium.org
286210d3ec Use --gclientfile instead of --spec, because windows is THE WORST.
--spec contains newlines, which are interpreted as actual newlines in the
command line, which causes gclient to fall apart at the seams.

TBR=agable@chromium.org, kjellander@webrtc.org, szager@chromium.org
BUG=2863, chromium:339647

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6944 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-08-21 02:14:11 +00:00
iannucci@chromium.org
98d92d63e2 Make sync_chromium use the git-cache when on the bots.
This should help bootstrapping speed, as well as allow better clobbering
support.

R=agable@chromium.org
TBR=agable@chromium.org, kjellander@webrtc.org, szager@chromium.org
BUG=2863, chromium:339647

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6943 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-08-20 23:53:59 +00:00
kjellander@webrtc.org
3aa837ca28 Increase verbosity for gclient sync of Chromium
In r6939 the --verbose flag was passed to the problematic
(approx 2.2GB large) gclient sync of Chromium's src.git repo.
However the bots are still hitting killed sync jobs due to
lack of output. This is a speculative attempt to provoke
even more logging, in order to trigger buffer flushing for
the buildbot execution.

BUG=2863, chromium:339647
TEST=Ran gclient runhooks locally with CHROME_HEADLESS=1 set.
TBR=phoglund@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6940 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-08-20 14:25:43 +00:00
kjellander@webrtc.org
bbca4dde0c Pass --verbose to gclient sync of Chromium
In r6938 the switch to using Chromium's Git repo was
deployed. However this fails on the bots since their timeout
for steps without output is 1200 seconds, which is not enough
to checkout the large Chromium Git repo.
Adding --verbose will print more output, thus getting a longer
timeout that should be enough for the runhooks step to complete.

BUG=2863, chromium:339647
TEST=None
TBR=phoglund@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6939 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-08-20 13:04:49 +00:00
kjellander@webrtc.org
8925662318 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
2014-08-20 12:10:11 +00:00