summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndroid Chromium Automerger <chromium-automerger@android>2014-07-04 16:50:18 +0000
committerAndroid Chromium Automerger <chromium-automerger@android>2014-07-04 16:50:18 +0000
commit3677513a005dc7f6ab6fa1f711c9bbaa141eefe1 (patch)
tree4cea761c00aa5a4276228b87f7b816e8c82f4205
parent448d48d2537f3b269c15656acb1ad4a35d4891f2 (diff)
parent103427718a0a928d1e95e4b6aaf03c81c8061e00 (diff)
downloadlibyuv-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.gn6
-rw-r--r--DEPS41
-rw-r--r--README.chromium2
-rw-r--r--include/libyuv/version.h2
-rw-r--r--libyuv.gyp7
-rw-r--r--tools/sanitizer_options.gyp59
-rw-r--r--tools/supplement.gypi31
-rw-r--r--util/psnr_main.cc3
8 files changed, 144 insertions, 7 deletions
diff --git a/BUILD.gn b/BUILD.gn
index b9a3f3a..e41b993 100644
--- a/BUILD.gn
+++ b/BUILD.gn
@@ -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",
]
diff --git a/DEPS b/DEPS
index fd71cb0..2fae824 100644
--- a/DEPS
+++ b/DEPS
@@ -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
diff --git a/libyuv.gyp b/libyuv.gyp
index d067a05..cc4b0f8 100644
--- a/libyuv.gyp
+++ b/libyuv.gyp
@@ -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");