libyuv/tools/supplement.gypi
kjellander@google.com f34649b2cd Roll chromium_revision 274825:280149 to fix GN
Due to http://crbug.com/389883 GN currently doesn't execute
unless the top folder is named 'src'.

To work around this, perform the following changes to a
checkout that currently has "trunk" as the root folder:
1. Rename trunk -> src
2. Remove .gclient_entries file (will be re-created)
3. Edit .gclient and:
  * set the name of the solution to "src"
  * add/change the custom_vars dict for the solution to
    have a key like this:
    "custom_vars" : {
      "root_dir" : "src",
    },
4. Run gclient sync

The buildbots already have this done and gets a "src"
dir for their checkouts.

I also workaround some recent changes for sanitizer tools
and add a copy of Chromium's tsan_suppressions.cc to prepare
for TSan v2 (since v1 that libyuv is currently using is
deprecated and should be removed).

BUG=libyuv:338
TEST=Currently working trybot passing + local compile on Linux in
Debug,Release and with ASan+TSan v2 using:
GYP_DEFINES="asan=1 release_extra_cflags=-g use_allocator=none" ./gyp_libyuv && ninja -C out/Release
GYP_DEFINES="tsan=1 release_extra_cflags=-g use_allocator=none" ./gyp_libyuv && ninja -C out/Release
R=fbarchard@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1027 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-07-03 08:00:03 +00:00

32 lines
1.2 KiB
Python

# Copyright 2011 The LibYuv 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.
# Supplement file for libyuv. To be processed, this file needs to be located in
# the first level of directories below the gyp_libyuv file.
# This is needed to workaround the otherwise failing include of base.gyp in
# Chromium's common.gypi when a sanitizer tool is used.
{
'variables': {
'use_sanitizer_options': 0,
},
'target_defaults': {
'conditions': [
# Add default sanitizer options similar to Chromium. This is needed to get
# the sanitizer options that has LeakSanitizer disabled by default.
# Otherwise yasm will throw leak errors during compile when
# GYP_DEFINES="asan=1".
['OS=="linux" and (chromeos==0 or target_arch!="ia32")', {
'dependencies': [
'<(DEPTH)/tools/sanitizer_options.gyp:sanitizer_options',
],
}],
],
},
}