summaryrefslogtreecommitdiff
path: root/chromium/third_party/widevine
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@qt.io>2017-07-12 14:07:37 +0200
committerAllan Sandfeld Jensen <allan.jensen@qt.io>2017-07-17 10:29:26 +0000
commitec02ee4181c49b61fce1c8fb99292dbb8139cc90 (patch)
tree25cde714b2b71eb639d1cd53f5a22e9ba76e14ef /chromium/third_party/widevine
parentbb09965444b5bb20b096a291445170876225268d (diff)
downloadqtwebengine-chromium-ec02ee4181c49b61fce1c8fb99292dbb8139cc90.tar.gz
BASELINE: Update Chromium to 59.0.3071.134
Change-Id: Id02ef6fb2204c5fd21668a1c3e6911c83b17585a Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Diffstat (limited to 'chromium/third_party/widevine')
-rw-r--r--chromium/third_party/widevine/cdm/BUILD.gn47
1 files changed, 45 insertions, 2 deletions
diff --git a/chromium/third_party/widevine/cdm/BUILD.gn b/chromium/third_party/widevine/cdm/BUILD.gn
index dda97991ca4..b66c652c0ae 100644
--- a/chromium/third_party/widevine/cdm/BUILD.gn
+++ b/chromium/third_party/widevine/cdm/BUILD.gn
@@ -18,6 +18,16 @@ if (widevine_arch == "x86") {
widevine_cdm_binary_files = []
widevine_cdm_manifest_file = []
+# Due to crbug.com/707488, in linux and chromeos chrome, we temporarily use
+# stub cdm for building cdm adapter and copy the real cdm after that.
+# The stub libwidevinecdm.so is in the sub-directory "./stub_cdm" to avoid
+# GN's complaint about generating the same output in two targets.
+# TODO(hmchen): Revert this change after crbug.com/707488 fixed.
+use_stub_cdm_for_chrome = false
+if (is_chrome_branded && is_linux) {
+ use_stub_cdm_for_chrome = true
+}
+
if (is_android) {
# Always available on Android regardless of branding.
widevine_cdm_version_h_file = "android/widevine_cdm_version.h"
@@ -82,7 +92,40 @@ source_set("headers") {
]
}
-if (widevine_cdm_binary_files != []) {
+if (use_stub_cdm_for_chrome) {
+ widevine_cdm_binary_files = []
+ copy("copy_widevinecdm") {
+ if (is_chromeos) {
+ widevine_cdm = [ "chromeos/$widevine_arch/libwidevinecdm.so" ]
+ } else if (is_linux) {
+ widevine_cdm = [ "linux/$widevine_arch/libwidevinecdm.so" ]
+ }
+ sources = widevine_cdm
+ outputs = [
+ "$root_out_dir/$widevine_cdm_path/{{source_file_part}}",
+ ]
+ }
+
+ shared_library("widevinecdm") {
+ output_dir = "$root_out_dir/$widevine_cdm_path/stub_cdm"
+ sources = [
+ "//media/cdm/stub/stub_cdm.cc",
+ "//media/cdm/stub/stub_cdm.h",
+ ]
+
+ defines = [ "CDM_IMPLEMENTATION" ]
+
+ deps = [
+ ":version_h",
+ ":copy_widevinecdm",
+ "//base",
+ "//build/config/sanitizers:deps",
+ ]
+
+ public_deps = [ ":copy_widevinecdm" ]
+ cflags = [ "-fvisibility=hidden" ]
+ }
+} else if (widevine_cdm_binary_files != []) {
copy("widevinecdm") {
sources = widevine_cdm_binary_files
outputs = [
@@ -165,7 +208,7 @@ if ((is_chrome_branded || enable_widevine) && enable_pepper_cdms) {
":widevinecdm",
]
- if (is_linux) {
+ if (is_linux && !use_stub_cdm_for_chrome) {
ldflags =
[ rebase_path("$root_out_dir/$widevine_cdm_path/libwidevinecdm.so",
root_build_dir) ]