diff options
author | Android Chromium Automerger <chromium-automerger@android> | 2014-07-04 16:50:18 +0000 |
---|---|---|
committer | Android Chromium Automerger <chromium-automerger@android> | 2014-07-04 16:50:18 +0000 |
commit | 3677513a005dc7f6ab6fa1f711c9bbaa141eefe1 (patch) | |
tree | 4cea761c00aa5a4276228b87f7b816e8c82f4205 | |
parent | 448d48d2537f3b269c15656acb1ad4a35d4891f2 (diff) | |
parent | 103427718a0a928d1e95e4b6aaf03c81c8061e00 (diff) | |
download | libyuv-3677513a005dc7f6ab6fa1f711c9bbaa141eefe1.tar.gz |
Merge third_party/libyuv from https://chromium.googlesource.com/external/libyuv.git at 103427718a0a928d1e95e4b6aaf03c81c8061e00
This commit was generated by merge_from_chromium.py.
Change-Id: I285380606f300bc7680557522ad857dddfaa8dd7
-rw-r--r-- | BUILD.gn | 6 | ||||
-rw-r--r-- | DEPS | 41 | ||||
-rw-r--r-- | README.chromium | 2 | ||||
-rw-r--r-- | include/libyuv/version.h | 2 | ||||
-rw-r--r-- | libyuv.gyp | 7 | ||||
-rw-r--r-- | tools/sanitizer_options.gyp | 59 | ||||
-rw-r--r-- | tools/supplement.gypi | 31 | ||||
-rw-r--r-- | util/psnr_main.cc | 3 |
8 files changed, 144 insertions, 7 deletions
@@ -77,6 +77,12 @@ source_set("libyuv") { defines += [ "HAVE_JPEG" ] } + if (is_msan) { + # MemorySanitizer does not support assembly code yet. + # http://crbug.com/344505 + defines += [ "LIBYUV_DISABLE_X86" ] + } + deps = [ "//third_party:jpeg", ] @@ -14,7 +14,7 @@ vars = { "chromium_trunk" : "http://src.chromium.org/svn/trunk", # chrome://version/ for revision of canary Chrome. # http://chromium-status.appspot.com/lkgr is a last known good revision. - "chromium_revision": "274825", + "chromium_revision": "280149", } # NOTE: Prefer revision numbers to tags for svn deps. Use http rather than @@ -29,6 +29,9 @@ deps = { "build": Var("chromium_trunk") + "/src/build@" + Var("chromium_revision"), + "buildtools": + From("chromium_deps", "src/buildtools"), + # Needed by common.gypi. "google_apis/build": Var("chromium_trunk") + "/src/google_apis/build@" + Var("chromium_revision"), @@ -48,9 +51,18 @@ deps = { "tools/gyp": From("chromium_deps", "src/tools/gyp"), + "tools/memory": + Var("chromium_trunk") + "/src/tools/memory@" + Var("chromium_revision"), + "tools/python": Var("chromium_trunk") + "/src/tools/python@" + Var("chromium_revision"), + "tools/sanitizer_options": + File(Var("chromium_trunk") + "/src/base/debug/sanitizer_options.cc@" + Var("chromium_revision")), + + "tools/tsan_suppressions": + File(Var("chromium_trunk") + "/src/base/debug/tsan_suppressions.cc@" + Var("chromium_revision")), + "tools/valgrind": Var("chromium_trunk") + "/src/tools/valgrind@" + Var("chromium_revision"), @@ -61,6 +73,18 @@ deps = { "third_party/binutils": Var("chromium_trunk") + "/src/third_party/binutils@" + Var("chromium_revision"), + "third_party/libc++": + Var("chromium_trunk") + "/src/third_party/libc++@" + Var("chromium_revision"), + + "third_party/libc++/trunk": + From("chromium_deps", "src/third_party/libc++/trunk"), + + "third_party/libc++abi": + Var("chromium_trunk") + "/src/third_party/libc++abi@" + Var("chromium_revision"), + + "third_party/libc++abi/trunk": + From("chromium_deps", "src/third_party/libc++abi/trunk"), + "third_party/libjpeg_turbo": From("chromium_deps", "src/third_party/libjpeg_turbo"), @@ -130,7 +154,7 @@ hooks = [ "--platform=win32", "--no_auth", "--bucket", "chromium-gn", - "-s", Var("root_dir") + "/tools/gn/bin/win/gn.exe.sha1", + "-s", Var("root_dir") + "/buildtools/win/gn.exe.sha1", ], }, { @@ -141,7 +165,7 @@ hooks = [ "--platform=darwin", "--no_auth", "--bucket", "chromium-gn", - "-s", Var("root_dir") + "/tools/gn/bin/mac/gn.sha1", + "-s", Var("root_dir") + "/buildtools/mac/gn.sha1", ], }, { @@ -152,7 +176,7 @@ hooks = [ "--platform=linux*", "--no_auth", "--bucket", "chromium-gn", - "-s", Var("root_dir") + "/tools/gn/bin/linux/gn.sha1", + "-s", Var("root_dir") + "/buildtools/linux64/gn.sha1", ], }, { @@ -163,10 +187,17 @@ hooks = [ "--platform=linux*", "--no_auth", "--bucket", "chromium-gn", - "-s", Var("root_dir") + "/tools/gn/bin/linux/gn32.sha1", + "-s", Var("root_dir") + "/buildtools/linux32/gn.sha1", ], }, { + # Remove GN binaries from tools/gn/bin that aren't used anymore. + # TODO(kjellander) remove after the end of July, 2014. + "name": "remove_old_gn_binaries", + "pattern": ".", + "action": ["python", Var("root_dir") + "/tools/gn/bin/rm_binaries.py"], + }, + { # Pull clang on mac. If nothing changed, or on non-mac platforms, this takes # zero seconds to run. If something changed, it downloads a prebuilt clang. "pattern": ".", diff --git a/README.chromium b/README.chromium index 9657262..f9fc966 100644 --- a/README.chromium +++ b/README.chromium @@ -1,6 +1,6 @@ Name: libyuv URL: http://code.google.com/p/libyuv/ -Version: 1025 +Version: 1026 License: BSD License File: LICENSE diff --git a/include/libyuv/version.h b/include/libyuv/version.h index 1663926..b2ec0c8 100644 --- a/include/libyuv/version.h +++ b/include/libyuv/version.h @@ -11,6 +11,6 @@ #ifndef INCLUDE_LIBYUV_VERSION_H_ // NOLINT #define INCLUDE_LIBYUV_VERSION_H_ -#define LIBYUV_VERSION 1025 +#define LIBYUV_VERSION 1026 #endif // INCLUDE_LIBYUV_VERSION_H_ NOLINT @@ -104,6 +104,13 @@ 'LIBYUV_NEON', ] }], + # MemorySanitizer does not support assembly code yet. + # http://crbug.com/344505 + [ 'msan == 1', { + 'defines': [ + 'LIBYUV_DISABLE_X86', + ], + }], ], 'defines': [ # Enable the following 3 macros to turn off assembly for specified CPU. diff --git a/tools/sanitizer_options.gyp b/tools/sanitizer_options.gyp new file mode 100644 index 0000000..ea453d3 --- /dev/null +++ b/tools/sanitizer_options.gyp @@ -0,0 +1,59 @@ +# Copyright 2014 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. + +# 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': [ + '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/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/tools/supplement.gypi b/tools/supplement.gypi new file mode 100644 index 0000000..c1cff3f --- /dev/null +++ b/tools/supplement.gypi @@ -0,0 +1,31 @@ +# 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', + ], + }], + ], + }, +} diff --git a/util/psnr_main.cc b/util/psnr_main.cc index a26bc92..0518ab8 100644 --- a/util/psnr_main.cc +++ b/util/psnr_main.cc @@ -121,6 +121,9 @@ double GetMSE(double sse, double size) { void PrintHelp(const char * program) { printf("%s [-options] org_seq rec_seq [rec_seq2.. etc]\n", program); +#ifdef HAVE_JPEG + printf("jpeg or raw YUV 420 supported.\n"); +#endif printf("options:\n"); printf(" -s <width> <height> .... specify YUV size, mandatory if none of the " "sequences have the\n"); |