diff --git a/DEPS b/DEPS index b9b02437d..d9c8e1a9c 100644 --- a/DEPS +++ b/DEPS @@ -14,7 +14,7 @@ vars = { # Use this googlecode_url variable only if there is an internal mirror for it. # If you do not know, use the full path while defining your new deps entry. "googlecode_url": "http://%s.googlecode.com/svn", - "chromium_revision": "3da41f9378f9d075a94cc278f99ce4344f9acc7b", + "chromium_revision": "b1748b82e821777fb8cd843fd54ff3aeb220a215", } # NOTE: Prefer revision numbers to tags for svn deps. Use http rather than diff --git a/chromium/.gclient b/chromium/.gclient index 68b9dd18c..722ba7d78 100644 --- a/chromium/.gclient +++ b/chromium/.gclient @@ -1,11 +1,10 @@ -solutions = [ - { "name" : "src", - "url" : "https://chromium.googlesource.com/chromium/src.git", - "deps_file" : ".DEPS.git", - "managed" : True, - "custom_deps" : { - }, - "safesync_url": "", - }, -] +solutions = [{ + 'name': 'src', + 'url': 'https://chromium.googlesource.com/chromium/src.git', + 'deps_file': '.DEPS.git', + 'managed': True, + 'custom_deps': {}, + 'safesync_url': '' +}] + cache_dir = None diff --git a/setup_links.py b/setup_links.py index 2fea2c352..81da2f785 100755 --- a/setup_links.py +++ b/setup_links.py @@ -78,11 +78,6 @@ FILES = { '.gn': None, 'tools/find_depot_tools.py': None, 'third_party/BUILD.gn': None, - - # This can be removed after https://codereview.chromium.org/357623003/ is - # landed and WebRTC is refactored+rolled past that Chromium revision. - 'base/debug/sanitizer_options.cc': ( - 'tools/sanitizer_options/sanitizer_options.cc'), } CHROMIUM_CHECKOUT = os.path.join('chromium', 'src') diff --git a/webrtc/build/sanitizer_options.gyp b/webrtc/build/sanitizer_options.gyp deleted file mode 100644 index 32dcf361b..000000000 --- a/webrtc/build/sanitizer_options.gyp +++ /dev/null @@ -1,59 +0,0 @@ -# Copyright (c) 2014 The WebRTC project authors. All Rights Reserved. -# -# Use of this source code is governed by a BSD-style license -# that can be found in the LICENSE file in the root of the source -# tree. An additional intellectual property rights grant can be found -# in the file PATENTS. All contributing project authors may -# be found in the AUTHORS file in the root of the source tree. - -# This is a similar target to the one in Chromium's base.gyp. It's needed to get -# the same sanitizer settings as Chromium uses (i.e. ASan, LSan, TSan...). -{ - 'targets': [ - { - 'target_name': 'sanitizer_options', - 'type': 'static_library', - 'toolsets': ['host', 'target'], - 'variables': { - # Every target is going to depend on sanitizer_options, so allow - # this one to depend on itself. - 'prune_self_dependency': 1, - # Do not let 'none' targets depend on this one, they don't need to. - 'link_dependency': 1, - }, - 'sources': [ - '<(DEPTH)/tools/sanitizer_options/sanitizer_options.cc', - ], - 'include_dirs': [ - '<(DEPTH)', - ], - # Some targets may want to opt-out from ASan, TSan and MSan and link - # without the corresponding runtime libraries. We drop the libc++ - # dependency and omit the compiler flags to avoid bringing instrumented - # code to those targets. - 'conditions': [ - ['use_custom_libcxx==1', { - 'dependencies!': [ - '<(DEPTH)/third_party/libc++/libc++.gyp:libcxx_proxy', - ], - }], - ['tsan==1', { - 'sources': [ - 'tsan_suppressions.cc', - ], - }], - ], - 'cflags!': [ - '-fsanitize=address', - '-fsanitize=thread', - '-fsanitize=memory', - '-fsanitize-memory-track-origins', - ], - 'direct_dependent_settings': { - 'ldflags': [ - '-Wl,-u_sanitizer_options_link_helper', - ], - }, - }, - ], # targets -} diff --git a/webrtc/build/tsan_suppressions.cc b/webrtc/build/tsan_suppressions_webrtc.cc similarity index 100% rename from webrtc/build/tsan_suppressions.cc rename to webrtc/build/tsan_suppressions_webrtc.cc diff --git a/webrtc/supplement.gypi b/webrtc/supplement.gypi index 0a10cbc2c..4bf859873 100644 --- a/webrtc/supplement.gypi +++ b/webrtc/supplement.gypi @@ -5,17 +5,20 @@ }, 'webrtc_root%': '<(webrtc_root)', 'build_with_chromium': 0, - 'use_sanitizer_options': 0, }, 'target_defaults': { - 'conditions': [ - # Add default sanitizer options similar to Chromium. This cannot be - # put in webrtc/build/common.gypi since that file is not included by - # third party code (yasm will throw leak errors during compile when - # GYP_DEFINES="asan=1". - ['OS=="linux" and (chromeos==0 or target_arch!="ia32")', { - 'dependencies': [ - '<(webrtc_root)/build/sanitizer_options.gyp:sanitizer_options', + 'target_conditions': [ + ['_target_name=="sanitizer_options"', { + 'conditions': [ + ['tsan==1', { + # Replace Chromium's TSan v2 suppressions with our own for WebRTC. + 'sources/': [ + ['exclude', 'tsan_suppressions.cc'], + ], + 'sources': [ + '<(webrtc_root)/build/tsan_suppressions_webrtc.cc', + ], + }], ], }], ],