This goes back to using a subtree mirror of Chromium's third_party directory (managed by gclient).
The related scripts for syncing the files are also deleted.
The plan is to solve the conflict by creating third_party directories in subdirectories of WebRTC rather than the repo root.
Bug: webrtc:8366
Change-Id: I0b9f6a86c6d4075e2fa12c2db19aa54682ddb11f
Reviewed-on: https://webrtc-review.googlesource.com/85300
Reviewed-by: Oleh Prypin <oprypin@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23757}
This is a reland of 1175ecd09599194caa05ecafdc4503e940809fc9.
Original change's description:
> Make it possible to run video_quality_loopback_test in swarming.
>
> I made two changes to video_quality_loopback_test to make it possible
> to run it on swarming.
>
> 1. We need to know the path to frame_analyzer when we're generating
> the build files, and it must be already present.
> I made frame_analyzer a resource, so it's downloaded to a known path
> before generating the build files.
> 2. The .zip files for apprtc and golang are downloaded and isolated.
> The script now extracts them and installs AppRTC.
>
> Passing task:
> https://chromium-swarm.appspot.com/task?id=3b230bcc04128210
>
> Bug: chromium:755660
> Change-Id: I34090897402421d5b7e29f21fbed354551197f92
> Reviewed-on: https://webrtc-review.googlesource.com/40920
> Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
> Commit-Queue: Edward Lemur <ehmaldonado@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#21716}
Bug: chromium:755660
Change-Id: Ie3ca62d64b4fe856485287b7d9d3d9e3f75dc091
Reviewed-on: https://webrtc-review.googlesource.com/42860
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Commit-Queue: Edward Lemur <ehmaldonado@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#21733}
This reverts commit 1175ecd09599194caa05ecafdc4503e940809fc9.
Reason for revert: Breaks the bots.
Original change's description:
> Make it possible to run video_quality_loopback_test in swarming.
>
> I made two changes to video_quality_loopback_test to make it possible
> to run it on swarming.
>
> 1. We need to know the path to frame_analyzer when we're generating
> the build files, and it must be already present.
> I made frame_analyzer a resource, so it's downloaded to a known path
> before generating the build files.
> 2. The .zip files for apprtc and golang are downloaded and isolated.
> The script now extracts them and installs AppRTC.
>
> Passing task:
> https://chromium-swarm.appspot.com/task?id=3b230bcc04128210
>
> Bug: chromium:755660
> Change-Id: I34090897402421d5b7e29f21fbed354551197f92
> Reviewed-on: https://webrtc-review.googlesource.com/40920
> Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
> Commit-Queue: Edward Lemur <ehmaldonado@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#21716}
TBR=phoglund@webrtc.org,ehmaldonado@webrtc.org
Change-Id: Id25d26adc547ff6f9ab178601e37527459c8b5ef
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:755660
Reviewed-on: https://webrtc-review.googlesource.com/42800
Reviewed-by: Edward Lemur <ehmaldonado@webrtc.org>
Commit-Queue: Edward Lemur <ehmaldonado@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#21723}
I made two changes to video_quality_loopback_test to make it possible
to run it on swarming.
1. We need to know the path to frame_analyzer when we're generating
the build files, and it must be already present.
I made frame_analyzer a resource, so it's downloaded to a known path
before generating the build files.
2. The .zip files for apprtc and golang are downloaded and isolated.
The script now extracts them and installs AppRTC.
Passing task:
https://chromium-swarm.appspot.com/task?id=3b230bcc04128210
Bug: chromium:755660
Change-Id: I34090897402421d5b7e29f21fbed354551197f92
Reviewed-on: https://webrtc-review.googlesource.com/40920
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Commit-Queue: Edward Lemur <ehmaldonado@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#21716}
Since webrtc/* has been moved to the top level
we should ignore it so it can be easily cleaned.
Right now there are usually at least .pyc files.
BUG=chromium:611808
NOTRY=True
Change-Id: If04284353a4e467583f810b2e5423c32269ba3cf
Reviewed-on: https://webrtc-review.googlesource.com/1571
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Henrik Kjellander <kjellander@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#19851}
Leaving compatibility script in webrtc/tools/compare_videos.py to
avoid breaking our video quality tests in Chromium.
Forwarding GN targets are left in webrtc/tools/BUILD.gn.
BUG=webrtc:7855
NOTRY=True
NOPRESUBMIT=True
Review-Url: https://codereview.webrtc.org/2965593002
Cr-Commit-Position: refs/heads/master@{#18848}
This should reduce/eliminate the amount of manual cleanup users
have to do to sync past 177567c518b121731e507e9b9c4049c4dc96e4c8 (#15754).
This is essentially a stripped down version of
526248779a/setup_links.py
which only does the link cleaning + adds removal of the links db.
BUG=webrtc:5006
NOTRY=True
Review-Url: https://codereview.webrtc.org/2603203002
Cr-Commit-Position: refs/heads/master@{#15897}
This changes the way we pull in dependencies WebRTC shares with
Chromium. The base, build, tools and third_party directories from
Chromium are now synced as Git subtree mirrors in the DEPS file.
All symlinks to directories that were previously created by the
setup_links.py are replaced with proper DEPS entries.
One downside with this solution is that we get a lot of directories
in tools/ and third_party/ that we currently don't use. Going forward
it might be possible to improve this but as long as the BUILD.gn files
are stored in the Chromium repo rather at each dependency's repo,
this will be very cumbersome.
The DEPS file will be kept auto-rolled by the script in
https://chromium.googlesource.com/external/webrtc/+/master/tools-webrtc/autoroller/roll_deps.py
which is periodically executed by a bot.
This change brings back the Google Play Services download for Android,
which displays a license confirmation dialog to the user at the first sync.
By running it as a proper hook instead of inside sync_chromium.py, the
problems with that the interactive prompt gets hidden/stuck should be
fixed (now the behavior is identical to Chromium).
Some measurements on the size savings for a clean, newly created checkout:
Linux: 15GB -> 6.4GB (-8.6GB)
Linux (with Android): 25 GB -> 16 GB (-9GB). 8.4GB of this is Android SDK+NDK.
Mac (with iOS): 14 GB -> 5.6GB (-8.4GB)
Note that for all of the above, 1GB is occupied by the resources/ dir.
BUG=webrtc:5006, webrtc:5578
NOTRY=True
R=agable@chromium.org, henrika@webrtc.org, iannucci@chromium.org
Review-Url: https://codereview.webrtc.org/1414343008 .
Cr-Commit-Position: refs/heads/master@{#15754}
Create a .gitignore file in resources/ that is responsible for
preventing the downloaded binary files from being added to source control.
BUG=None
NOTRY=True
Review-Url: https://codereview.webrtc.org/2587163002
Cr-Commit-Position: refs/heads/master@{#15691}
In order to get rid of the Chromium checkout for WebRTC, the plan is to
instead of cloning all of Chromium, only clone the build, third_party and
tools sub-directories. In order to do so, we must first move all things
checked into the WebRTC tools/ directory somewhere else.
Due to many hardcoded assumptions of tools/ existing in Chrome, this
is only manageble solution to the problem.
This first step only moves stuff not used by the build system or bots,
and deletes a few unused directories.
BUG=webrtc:5006
R=henrika@webrtc.org
Review-Url: https://codereview.webrtc.org/2584433002 .
Cr-Commit-Position: refs/heads/master@{#15622}
third_party/nss is no longer used.
third_party/llvm-build and third_party/syzygy links are not be needed;
these dirs are created during 'gclient runhooks' now that we moved
to executing hooks in our own DEPS file instead of the ones in
chromium/src/DEPS as per https://codereview.webrtc.org/2524673002
BUG=webrtc:5006
NOTRY=True
TESTED=Ran all compile trybots with the --clobber flag.
Review-Url: https://codereview.webrtc.org/2570993003
Cr-Commit-Position: refs/heads/master@{#15621}
This removes the need of executing Chromium's runhooks.
A selection of hooks (not all) were picked that should be
sufficient for WebRTC's needs.
New dependencies:
* third_party/espresso
* third_party/javax_inject
* tools/clang_format_merge_driver
BUG=webrtc:5578, webrtc:5006, webrtc:6741
TESTED=
rm -rf third_party/android_tools/sdk/extras/google/m2repository/
gclient runhooks
Verified that third_party/android_tools/sdk/extras/google/m2repository/ is downloaded without any license prompt.
NOTRY=True
Review-Url: https://codereview.webrtc.org/2524673002
Cr-Commit-Position: refs/heads/master@{#15195}
Move the resources to //resources and upload them to Google Storage.
BUG=webrtc:6727
Review-Url: https://codereview.webrtc.org/2508943004
Cr-Commit-Position: refs/heads/master@{#15152}
Essentially a copy of https://codereview.chromium.org/2299953002/
plus changes to WebRTC's license, changed OWNERS and additional
MB updates up to Chromium revision http://crrev.com/f1e2718a3ff.
The PRESUBMIT.py check was updated to use the existing
webrtc/build/mb_config.pyl to avoid breaking bots (that have
this path hardcoded).
This replaces the previously symlinked MB, which already
runs validation of the WebRTC configs as part of
webrtc/build/PRESUBMIT.py.
BUG=chromium:664425
NOTRY=True
TESTED=Ran:
tools/mb/mb.py gen -m client.webrtc -b 'Mac64 Release' --config-file webrtc/build/mb_config.pyl --isolate-map-file=webrtc/build/gn_isolate_map.pyl --gyp-script=webrtc/build/gyp_webrtc.py //out/Release
Review-Url: https://codereview.webrtc.org/2306163002
Cr-Commit-Position: refs/heads/master@{#15068}
Usually .sha1 files are downlaoded using DEPS hooks but since this
bucket is internal we can't run it everywhere since it would fail
non-Googler checkouts. Instead we download the binaries by calling
a Python script, which will be added as a separate build step on the
buildbots.
The .sha1 files are copied from
https://cs.chromium.org/chromium/src/chrome/test/data/webrtc/resources/tools/
leaving out pesq and sox.
BUG=webrtc:6633
TESTED=Ran the download.py script on Mac and verified the files were downloaded.
R=mandermo@google.com, phoglund@webrtc.org
Review URL: https://codereview.webrtc.org/2462023002 .
Cr-Commit-Position: refs/heads/master@{#14859}
The Dr Memory toolchain is no longer supported by Chromium and
their bots have been removed. WebRTC will now rely on the LLVM
santizers for catching such errors.
BUG=webrtc:6553
NOTRY=True
R=ehmaldonado@webrtc.org
Review URL: https://codereview.webrtc.org/2434563003 .
Cr-Commit-Position: refs/heads/master@{#14703}
Fixes the following error for Android GN bots when trying
to roll Chromium into WebRTC.
Full logs at:
https://build.chromium.org/p/tryserver.webrtc/builders/android_gn_dbg/builds/13405/steps/generate_build_files/logs/stdio
/b/c/b/android_gn_dbg/src/buildtools/linux64/gn gen //out/Debug --check
-> returned 1
ERROR at //build/config/android/internal_rules.gni:140:23: Can't load input file.
deps += [ "${_target_label}__build_config" ]
^-------------------------------
Unable to load:
/b/c/b/android_gn_dbg/src/third_party/byte_buddy/BUILD.gn
I also checked in the secondary tree for:
/b/c/b/android_gn_dbg/src/build/secondary/third_party/byte_buddy/BUILD.gn
GN gen failed: 1
BUG=522043
NOTRY=True
Review-Url: https://codereview.webrtc.org/2268343002
Cr-Commit-Position: refs/heads/master@{#13886}
For hiding xcworkspace files, along with xcodeproj files, both of which
are created by the ninja xcode generator
BUG=NONE
NOTRY=True
Review-Url: https://codereview.webrtc.org/2045733005
Cr-Commit-Position: refs/heads/master@{#13075}
The Android apps that were previously built with bash
commmands are now using Chromium build targets and no
longer produces output into the source tree. Thus such
Git ignore entries can be removed.
TESTED=Built for Android and verified no files showed up
when running 'git status'.
R=perkj@webrtc.org
Review URL: https://codereview.webrtc.org/1749543003 .
Cr-Commit-Position: refs/heads/master@{#11821}
I removed the 'libjingle' target in talk/libjingle.gyp and replaced
all users of it with base/base.gyp:rtc_base. It seems the jsoncpp
and expat dependencies were not used by it's previous references.
The files in talk/media/testdata were uploaded to Google Storage and
added .sha1 files in resources/media instead of simply moving them.
The previously disabled warnings that were inherited from
talk/build/common.gypi are now replaced by target-specific disabling
of only the failing warnings. Additional disabling was needed since the stricter
compilation warnings that applies to code in webrtc/.
License headers will be updated in a follow-up CL in order to not
break Git history.
Other modifications:
* Updated the header guards.
* Sorted the includes using chromium/src/tools/sort-headers.py
except for these files:
talk/app/webrtc/peerconnectionendtoend_unittest.cc
talk/app/webrtc/java/jni/androidmediadecoder_jni.cc
talk/app/webrtc/java/jni/androidmediaencoder_jni.cc
webrtc/media/devices/win32devicemanager.cc.
* Unused GYP reference to libjingle_tests_additional_deps was removed.
* Removed duplicated GYP entries of
webrtc/base/testutils.cc
webrtc/base/testutils.h
The HAVE_WEBRTC_VIDEO and HAVE_WEBRTC_VOICE defines were used by only talk/media,
so they were moved to the media.gyp.
I also checked that none of
EXPAT_RELATIVE_PATH,
FEATURE_ENABLE_VOICEMAIL,
GTEST_RELATIVE_PATH,
JSONCPP_RELATIVE_PATH,
LOGGING=1,
SRTP_RELATIVE_PATH,
FEATURE_ENABLE_SSL,
FEATURE_ENABLE_VOICEMAIL,
FEATURE_ENABLE_PSTN,
HAVE_SCTP,
HAVE_SRTP,
are used by the talk/media code.
For Chromium, the following changes will need to be applied to the roll CL that updates the
DEPS for WebRTC and libjingle: https://codereview.chromium.org/1604303002/
BUG=webrtc:5420
NOPRESUBMIT=True
TBR=tommi@webrtc.org
Review URL: https://codereview.webrtc.org/1587193006
Cr-Commit-Position: refs/heads/master@{#11495}