chromium: update to 62.0.3202.62

This commit is contained in:
Sascha Kuehndel (InuSasha) 2017-12-14 16:48:20 +01:00
parent 9d2b6be4e0
commit 9796b59ceb
No known key found for this signature in database
GPG Key ID: 15FED89617B88D1B
10 changed files with 240 additions and 12154 deletions

View File

@ -19,14 +19,14 @@
################################################################################
PKG_NAME="chromium"
PKG_VERSION="61.0.3163.100"
PKG_SHA256="4135968cac6623c1d2b224494600cd274098cce41c298f8c3908b354a34c281b"
PKG_REV="107.006"
PKG_VERSION="62.0.3202.62"
PKG_SHA256="e8df3150386729ddcb4971636627e54815ad447be5f122201e310f5bb0bcc362"
PKG_REV="107.008"
PKG_ARCH="x86_64"
PKG_LICENSE="Mixed"
PKG_SITE="http://www.chromium.org/Home"
PKG_URL="https://commondatastorage.googleapis.com/chromium-browser-official/$PKG_NAME-$PKG_VERSION.tar.xz"
PKG_DEPENDS_HOST="toolchain ninja:host Python:host"
PKG_DEPENDS_HOST="toolchain ninja:host Python2:host"
PKG_DEPENDS_TARGET="chromium:host pciutils dbus libXcomposite libXcursor libXtst alsa-lib bzip2 yasm nss libXScrnSaver libexif libpng harfbuzz atk gtk+ libva-vdpau-driver unclutter xdotool"
PKG_SECTION="browser"
PKG_SHORTDESC="Chromium Browser: the open-source web browser from Google"
@ -95,6 +95,7 @@ make_target() {
'use_sysroot=true'
'use_vulcanize=false'
'use_vaapi=true'
'exclude_unwind_tables=true'
"target_sysroot=\"${SYSROOT_PREFIX}\""
'enable_hangout_services_extension=true'
'enable_widevine=true'

View File

@ -1,8 +1,8 @@
Source: https://aur.archlinux.org/packages/chromium-vaapi/ chromium-vaapi-r12.patch
Source: https://aur.archlinux.org/packages/chromium-vaapi/
From 53b93dfe87fd10cced5d2a2a63072dfc7a2af6e4 Mon Sep 17 00:00:00 2001
From d60511c973e432b97d9929dcfbd77c9af25dbd51 Mon Sep 17 00:00:00 2001
From: Daniel Charles <daniel.charles@intel.com>
Date: Fri, 28 Jul 2017 16:31:47 -0700
Date: Fri, 01 Sep 2017 15:57:43 -0700
Subject: [PATCH] Enable VAVDA, VAVEA and VAJDA on linux with VAAPI only
This patch contains all the changes necessary to use VA-API along with
@ -39,10 +39,10 @@ Signed-off-by: Daniel Charles <daniel.charles@intel.com>
---
diff --git a/AUTHORS b/AUTHORS
index 79becdb..c2905ff 100644
index 9936ab9..db5e449 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -159,6 +159,7 @@
@@ -161,6 +161,7 @@
Daniel Bevenius <daniel.bevenius@gmail.com>
Daniel Bomar <dbdaniel42@gmail.com>
Daniel Carvalho Liedke <dliedke@gmail.com>
@ -51,10 +51,10 @@ index 79becdb..c2905ff 100644
Daniel Johnson <danielj41@gmail.com>
Daniel Lockyer <thisisdaniellockyer@gmail.com>
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
index 4cb4ae5..19f663c 100644
index e4baad6..9e4a9f5 100644
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -1161,12 +1161,14 @@
@@ -1227,12 +1227,14 @@
flag_descriptions::kUiPartialSwapDescription, kOsAll,
SINGLE_DISABLE_VALUE_TYPE(switches::kUIDisablePartialSwap)},
#if BUILDFLAG(ENABLE_WEBRTC)
@ -69,7 +69,7 @@ index 4cb4ae5..19f663c 100644
{"enable-webrtc-hw-h264-encoding",
flag_descriptions::kWebrtcHwH264EncodingName,
flag_descriptions::kWebrtcHwH264EncodingDescription, kOsAndroid | kOsCrOS,
@@ -1474,6 +1476,13 @@
@@ -1547,6 +1549,13 @@
flag_descriptions::kMultideviceDescription, kOsCrOS,
FEATURE_VALUE_TYPE(features::kMultidevice)},
#endif // OS_CHROMEOS
@ -83,16 +83,16 @@ index 4cb4ae5..19f663c 100644
{
"disable-accelerated-video-decode",
flag_descriptions::kAcceleratedVideoDecodeName,
@@ -1481,6 +1490,7 @@
@@ -1554,6 +1563,7 @@
kOsMac | kOsWin | kOsCrOS | kOsAndroid,
SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedVideoDecode),
},
+#endif
#if defined(OS_WIN)
{
"enable-hdr", flag_descriptions::kEnableHDRName,
@@ -2127,12 +2137,17 @@
FEATURE_VALUE_TYPE(chrome::android::kWebVrAutopresent)},
{"mojo-video-encode-accelerator",
flag_descriptions::kMojoVideoEncodeAcceleratorName,
flag_descriptions::kMojoVideoEncodeAcceleratorDescription,
@@ -2212,12 +2222,17 @@
FEATURE_VALUE_TYPE(features::kWebVrVsyncAlign)},
#endif // OS_ANDROID
#endif // ENABLE_VR
-#if defined(OS_CHROMEOS)
@ -112,18 +112,10 @@ index 4cb4ae5..19f663c 100644
flag_descriptions::kV8CacheOptionsDescription, kOsAll,
MULTI_VALUE_TYPE(kV8CacheOptionsChoices)},
diff --git a/chrome/browser/chromeos/login/chrome_restart_request.cc b/chrome/browser/chromeos/login/chrome_restart_request.cc
index 7ac532c..0afa57b 100644
index 761a240..c29be3d 100644
--- a/chrome/browser/chromeos/login/chrome_restart_request.cc
+++ b/chrome/browser/chromeos/login/chrome_restart_request.cc
@@ -19,6 +19,7 @@
#include "base/sys_info.h"
#include "base/timer/timer.h"
#include "base/values.h"
+#include "build/build_config.h"
#include "cc/base/switches.h"
#include "chrome/browser/browser_process.h"
#include "chrome/browser/chromeos/boot_times_recorder.h"
@@ -79,8 +80,13 @@
@@ -80,8 +80,13 @@
::switches::kDisable2dCanvasImageChromium,
::switches::kDisableAccelerated2dCanvas,
::switches::kDisableAcceleratedJpegDecoding,
@ -137,7 +129,7 @@ index 7ac532c..0afa57b 100644
::switches::kDisableBlinkFeatures,
::switches::kDisableCastStreamingHWEncoding,
::switches::kDisableDistanceFieldText,
@@ -169,7 +175,7 @@
@@ -168,7 +173,7 @@
::switches::kDisableWebGLImageChromium,
::switches::kEnableWebGLImageChromium,
::switches::kEnableWebVR,
@ -147,10 +139,10 @@ index 7ac532c..0afa57b 100644
::switches::kDisableWebRtcHWEncoding,
#endif
diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc
index 100f689..4e7ca96 100644
index 42fc3a2..a0700fe 100644
--- a/chrome/browser/flag_descriptions.cc
+++ b/chrome/browser/flag_descriptions.cc
@@ -11,6 +11,13 @@
@@ -14,6 +14,13 @@
"Enables the use of the GPU to perform 2d canvas rendering instead of "
"using software rendering.";
@ -164,7 +156,7 @@ index 100f689..4e7ca96 100644
const char kAcceleratedVideoDecodeName[] = "Hardware-accelerated video decode";
const char kAcceleratedVideoDecodeDescription[] =
"Hardware-accelerated video decode where available.";
@@ -1326,6 +1333,7 @@
@@ -1412,6 +1419,7 @@
const char kWebrtcEchoCanceller3Description[] =
"Experimental WebRTC echo canceller (AEC3).";
@ -172,7 +164,7 @@ index 100f689..4e7ca96 100644
const char kWebrtcHwDecodingName[] = "WebRTC hardware video decoding";
const char kWebrtcHwDecodingDescription[] =
"Support in WebRTC for decoding video streams using platform hardware.";
@@ -1333,6 +1341,7 @@
@@ -1419,6 +1427,7 @@
const char kWebrtcHwEncodingName[] = "WebRTC hardware video encoding";
const char kWebrtcHwEncodingDescription[] =
"Support in WebRTC for encoding video streams using platform hardware.";
@ -180,29 +172,29 @@ index 100f689..4e7ca96 100644
const char kWebrtcHwH264EncodingName[] = "WebRTC hardware h264 video encoding";
const char kWebrtcHwH264EncodingDescription[] =
@@ -2117,7 +2126,7 @@
@@ -2205,14 +2214,16 @@
#endif // defined(OS_MACOSX)
// Chrome OS -------------------------------------------------------------------
-#if defined(OS_CHROMEOS)
+#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID))
const char kAcceleratedMjpegDecodeName[] =
"Hardware-accelerated mjpeg decode for captured frame";
@@ -2126,7 +2135,7 @@
const char kAcceleratedMjpegDecodeDescription[] =
"Enable hardware-accelerated mjpeg decode for captured frame where "
"available.";
+#endif
-#endif // defined(OS_CHROMEOS)
+#endif // defined(OS_CHROMEOS) || BUILDFLAG(USE_VAAPI)
#if defined(OS_WIN)
+#if defined(OS_CHROMEOS)
const char kAllowTouchpadThreeFingerClickName[] = "Touchpad three-finger-click";
const char kAllowTouchpadThreeFingerClickDescription[] =
"Enables touchpad three-finger-click as middle button.";
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
index 3a99fb6..57e8c93 100644
index d6fcf7d..3cbc7ad 100644
--- a/chrome/browser/flag_descriptions.h
+++ b/chrome/browser/flag_descriptions.h
@@ -34,6 +34,10 @@
@@ -36,6 +36,10 @@
extern const char kAccelerated2dCanvasName[];
extern const char kAccelerated2dCanvasDescription[];
@ -213,7 +205,7 @@ index 3a99fb6..57e8c93 100644
extern const char kAcceleratedVideoDecodeName[];
extern const char kAcceleratedVideoDecodeDescription[];
@@ -1251,13 +1255,17 @@
@@ -1351,13 +1355,17 @@
#endif // defined(OS_MACOSX)
@ -263,10 +255,10 @@ index 0461556..3dc14164 100644
" about:flags or the command line.",
true},
diff --git a/content/browser/gpu/gpu_data_manager_impl_private.cc b/content/browser/gpu/gpu_data_manager_impl_private.cc
index d1b78d7..92819ae 100644
index 4388cef..f3aa640 100644
--- a/content/browser/gpu/gpu_data_manager_impl_private.cc
+++ b/content/browser/gpu/gpu_data_manager_impl_private.cc
@@ -760,7 +760,11 @@
@@ -717,7 +717,11 @@
DCHECK(command_line);
if (ShouldDisableAcceleratedVideoDecode(command_line))
@ -278,7 +270,7 @@ index d1b78d7..92819ae 100644
#if defined(USE_AURA)
if (!CanUseGpuBrowserCompositor())
@@ -818,7 +822,11 @@
@@ -751,7 +755,11 @@
}
if (ShouldDisableAcceleratedVideoDecode(command_line)) {
@ -289,8 +281,8 @@ index d1b78d7..92819ae 100644
+#endif
}
if (gpu_driver_bugs_.find(gpu::CREATE_DEFAULT_GL_CONTEXT) !=
@@ -912,7 +920,12 @@
#if defined(USE_OZONE)
@@ -844,7 +852,12 @@
const base::CommandLine* command_line =
base::CommandLine::ForCurrentProcess();
if (!ShouldDisableAcceleratedVideoDecode(command_line) &&
@ -303,8 +295,8 @@ index d1b78d7..92819ae 100644
+ ) {
prefs->pepper_accelerated_video_decode_enabled = true;
}
prefs->disable_2d_canvas_copy_on_write =
@@ -1107,7 +1120,13 @@
}
@@ -1043,7 +1056,13 @@
// to resolve crbug/442039 has been collected.
const std::string group_name = base::FieldTrialList::FindFullName(
"DisableAcceleratedVideoDecode");
@ -320,22 +312,22 @@ index d1b78d7..92819ae 100644
return false;
}
diff --git a/content/browser/gpu/gpu_process_host.cc b/content/browser/gpu/gpu_process_host.cc
index 53e96f5..16379e8 100644
index e1879c6..f29313f 100644
--- a/content/browser/gpu/gpu_process_host.cc
+++ b/content/browser/gpu/gpu_process_host.cc
@@ -116,7 +116,11 @@
@@ -112,7 +112,11 @@
// Command-line switches to propagate to the GPU process.
static const char* const kSwitchNames[] = {
switches::kCreateDefaultGLContext,
+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(OS_ANDROID)
+ switches::kEnableAcceleratedVideo,
+#else
switches::kDisableAcceleratedVideoDecode,
+#endif
switches::kDisableBreakpad,
switches::kDisableES3GLContext,
switches::kDisableGpuRasterization,
@@ -126,7 +130,7 @@
switches::kDisableGpuSandbox,
@@ -121,7 +125,7 @@
switches::kDisableLogging,
switches::kDisableSeccompFilterSandbox,
switches::kDisableShaderNameHashing,
@ -345,10 +337,10 @@ index 53e96f5..16379e8 100644
#endif
#if defined(OS_WIN)
diff --git a/content/browser/renderer_host/media/video_capture_browsertest.cc b/content/browser/renderer_host/media/video_capture_browsertest.cc
index e4c37d1..4634e92 100644
index 8ca0ad0..8c489d0 100644
--- a/content/browser/renderer_host/media/video_capture_browsertest.cc
+++ b/content/browser/renderer_host/media/video_capture_browsertest.cc
@@ -154,8 +154,13 @@
@@ -155,8 +155,13 @@
base::CommandLine::ForCurrentProcess()->AppendSwitch(
switches::kUseFakeJpegDecodeAccelerator);
} else {
@ -363,7 +355,7 @@ index e4c37d1..4634e92 100644
if (params_.use_mojo_service) {
base::CommandLine::ForCurrentProcess()->AppendSwitchASCII(
diff --git a/content/browser/renderer_host/media/video_capture_gpu_jpeg_decoder.cc b/content/browser/renderer_host/media/video_capture_gpu_jpeg_decoder.cc
index 6970008..89ba93d 100644
index 22fbcb8..52b3337 100644
--- a/content/browser/renderer_host/media/video_capture_gpu_jpeg_decoder.cc
+++ b/content/browser/renderer_host/media/video_capture_gpu_jpeg_decoder.cc
@@ -56,15 +56,21 @@
@ -393,10 +385,10 @@ index 6970008..89ba93d 100644
RecordInitDecodeUMA_Locked();
return;
diff --git a/content/browser/renderer_host/render_process_host_impl.cc b/content/browser/renderer_host/render_process_host_impl.cc
index a750cdc..bd05641 100644
index 35cb294..c39c975 100644
--- a/content/browser/renderer_host/render_process_host_impl.cc
+++ b/content/browser/renderer_host/render_process_host_impl.cc
@@ -2450,7 +2450,11 @@
@@ -2488,7 +2488,11 @@
switches::kDisable2dCanvasImageChromium,
switches::kDisable3DAPIs,
switches::kDisableAcceleratedJpegDecoding,
@ -406,9 +398,9 @@ index a750cdc..bd05641 100644
switches::kDisableAcceleratedVideoDecode,
+#endif
switches::kDisableBackgroundTimerThrottling,
switches::kDisableBlinkFeatures,
switches::kDisableBreakpad,
@@ -2603,8 +2607,10 @@
switches::kDisablePreferCompositingToLCDText,
@@ -2641,8 +2645,10 @@
switches::kEnablePepperTesting,
#endif
#if BUILDFLAG(ENABLE_WEBRTC)
@ -417,8 +409,8 @@ index a750cdc..bd05641 100644
switches::kDisableWebRtcHWEncoding,
+#endif
switches::kEnableWebRtcSrtpAesGcm,
switches::kEnableWebRtcSrtpEncryptedHeaders,
switches::kEnableWebRtcStunOrigin,
switches::kEnforceWebRtcIPPermissionCheck,
diff --git a/content/browser/webrtc/webrtc_media_recorder_browsertest.cc b/content/browser/webrtc/webrtc_media_recorder_browsertest.cc
index 3d815a2..2c96048 100644
--- a/content/browser/webrtc/webrtc_media_recorder_browsertest.cc
@ -438,10 +430,10 @@ index 3d815a2..2c96048 100644
private:
diff --git a/content/common/sandbox_linux/bpf_gpu_policy_linux.cc b/content/common/sandbox_linux/bpf_gpu_policy_linux.cc
index fe2f298a..507f481 100644
index ac5dc5a..ed6196c 100644
--- a/content/common/sandbox_linux/bpf_gpu_policy_linux.cc
+++ b/content/common/sandbox_linux/bpf_gpu_policy_linux.cc
@@ -56,22 +56,6 @@
@@ -57,22 +57,6 @@
#endif
}
@ -464,7 +456,7 @@ index fe2f298a..507f481 100644
inline bool IsArchitectureArm() {
#if defined(__arm__) || defined(__aarch64__)
return true;
@@ -96,21 +80,14 @@
@@ -97,21 +81,14 @@
#endif
}
@ -490,7 +482,7 @@ index fe2f298a..507f481 100644
}
intptr_t GpuSIGSYS_Handler(const struct arch_seccomp_data& args,
@@ -296,33 +273,6 @@
@@ -295,33 +272,6 @@
GpuBrokerProcessPolicy::Create,
std::vector<BrokerFilePermission>()); // No extra files in whitelist.
@ -546,10 +538,10 @@ index a5424bb..b68b802 100644
+ }
}
diff --git a/content/gpu/gpu_main.cc b/content/gpu/gpu_main.cc
index 4b87a8c..1bbf7c8 100644
index 6a1de90..9a84e9e 100644
--- a/content/gpu/gpu_main.cc
+++ b/content/gpu/gpu_main.cc
@@ -246,7 +246,7 @@
@@ -245,7 +245,7 @@
// Initializes StatisticsRecorder which tracks UMA histograms.
base::StatisticsRecorder::Initialize();
@ -558,7 +550,7 @@ index 4b87a8c..1bbf7c8 100644
// Set thread priority before sandbox initialization.
base::PlatformThread::SetCurrentThreadPriority(base::ThreadPriority::DISPLAY);
#endif
@@ -274,7 +274,7 @@
@@ -275,7 +275,7 @@
GetContentClient()->SetGpuInfo(gpu_init.gpu_info());
base::ThreadPriority io_thread_priority = base::ThreadPriority::NORMAL;
@ -568,18 +560,10 @@ index 4b87a8c..1bbf7c8 100644
#endif
diff --git a/content/public/browser/gpu_utils.cc b/content/public/browser/gpu_utils.cc
index a4145ba..e9ff010 100644
index 7d926da..70afc33 100644
--- a/content/public/browser/gpu_utils.cc
+++ b/content/public/browser/gpu_utils.cc
@@ -7,6 +7,7 @@
#include "base/command_line.h"
#include "base/single_thread_task_runner.h"
#include "base/strings/string_number_conversions.h"
+#include "build/build_config.h"
#include "content/browser/gpu/gpu_process_host.h"
#include "content/public/common/content_features.h"
#include "content/public/common/content_switches.h"
@@ -56,12 +57,19 @@
@@ -57,12 +57,19 @@
gpu_preferences.ui_prioritize_in_gpu_process =
command_line->HasSwitch(switches::kUIPrioritizeInGpuProcess);
gpu_preferences.disable_accelerated_video_decode =
@ -602,10 +586,10 @@ index a4145ba..e9ff010 100644
command_line->HasSwitch(switches::kDisableWebRtcHWEncoding);
#endif
diff --git a/content/public/common/content_switches.cc b/content/public/common/content_switches.cc
index d7101f4..d81b381 100644
index 78041e2..60f6597 100644
--- a/content/public/common/content_switches.cc
+++ b/content/public/common/content_switches.cc
@@ -85,12 +85,21 @@
@@ -88,12 +88,21 @@
// Disable gpu-accelerated 2d canvas.
const char kDisableAccelerated2dCanvas[] = "disable-accelerated-2d-canvas";
@ -628,7 +612,7 @@ index d7101f4..d81b381 100644
// Disables hardware acceleration of video decode, where available.
const char kDisableAcceleratedVideoDecode[] =
"disable-accelerated-video-decode";
@@ -915,11 +924,13 @@
@@ -933,11 +942,13 @@
// ignores this switch on its stable and beta channels.
const char kDisableWebRtcEncryption[] = "disable-webrtc-encryption";
@ -643,10 +627,10 @@ index d7101f4..d81b381 100644
// Enables negotiation of GCM cipher suites from RFC 7714 for SRTP in WebRTC.
// See https://tools.ietf.org/html/rfc7714 for further information.
diff --git a/content/public/common/content_switches.h b/content/public/common/content_switches.h
index 0227769..6d72feb 100644
index 9451a76..275b5ed 100644
--- a/content/public/common/content_switches.h
+++ b/content/public/common/content_switches.h
@@ -34,7 +34,11 @@
@@ -35,7 +35,11 @@
CONTENT_EXPORT extern const char kDisable3DAPIs[];
CONTENT_EXPORT extern const char kDisableAccelerated2dCanvas[];
CONTENT_EXPORT extern const char kDisableAcceleratedJpegDecoding[];
@ -668,7 +652,7 @@ index 0227769..6d72feb 100644
CONTENT_EXPORT extern const char kEnableAggressiveDOMStorageFlushing[];
CONTENT_EXPORT extern const char kEnablePreferCompositingToLCDText[];
CONTENT_EXPORT extern const char kEnableBlinkFeatures[];
@@ -257,8 +264,10 @@
@@ -261,8 +268,10 @@
#if BUILDFLAG(ENABLE_WEBRTC)
CONTENT_EXPORT extern const char kDisableWebRtcEncryption[];
@ -677,10 +661,10 @@ index 0227769..6d72feb 100644
CONTENT_EXPORT extern const char kDisableWebRtcHWEncoding[];
+#endif
CONTENT_EXPORT extern const char kEnableWebRtcSrtpAesGcm[];
CONTENT_EXPORT extern const char kEnableWebRtcSrtpEncryptedHeaders[];
CONTENT_EXPORT extern const char kEnableWebRtcStunOrigin[];
CONTENT_EXPORT extern const char kEnforceWebRtcIPPermissionCheck[];
diff --git a/content/renderer/media/webrtc/peer_connection_dependency_factory.cc b/content/renderer/media/webrtc/peer_connection_dependency_factory.cc
index 38fa749..7f7bf18 100644
index 9d05ac0..69555fa 100644
--- a/content/renderer/media/webrtc/peer_connection_dependency_factory.cc
+++ b/content/renderer/media/webrtc/peer_connection_dependency_factory.cc
@@ -240,10 +240,19 @@
@ -705,10 +689,10 @@ index 38fa749..7f7bf18 100644
}
}
diff --git a/content/renderer/render_thread_impl.cc b/content/renderer/render_thread_impl.cc
index 763f2fe..603660f 100644
index 4bbfbf6..e85b5c6 100644
--- a/content/renderer/render_thread_impl.cc
+++ b/content/renderer/render_thread_impl.cc
@@ -1443,7 +1443,11 @@
@@ -1457,7 +1457,11 @@
scoped_refptr<base::SingleThreadTaskRunner> media_task_runner =
GetMediaThreadTaskRunner();
const bool enable_video_accelerator =
@ -734,7 +718,7 @@ index 8dd0ff1..d6e5c59 100644
bool disable_vaapi_accelerated_video_encode = false;
#endif
diff --git a/gpu/config/software_rendering_list.json b/gpu/config/software_rendering_list.json
index ed5c6d6..4c45159 100644
index 5edb5636..069ae95 100644
--- a/gpu/config/software_rendering_list.json
+++ b/gpu/config/software_rendering_list.json
@@ -371,17 +371,6 @@
@ -756,11 +740,11 @@ index ed5c6d6..4c45159 100644
"description": "Disable VMware software renderer on older Mesa",
"cr_bugs": [145531, 332596, 571899, 629434],
diff --git a/media/filters/BUILD.gn b/media/filters/BUILD.gn
index e8ff812..18735d2 100644
index 0362601..ebed982 100644
--- a/media/filters/BUILD.gn
+++ b/media/filters/BUILD.gn
@@ -195,7 +195,7 @@
]
@@ -182,7 +182,7 @@
deps += [ "//media/base/android" ]
}
- if (current_cpu != "arm" && is_chromeos) {
@ -769,10 +753,10 @@ index e8ff812..18735d2 100644
"h264_bitstream_buffer.cc",
"h264_bitstream_buffer.h",
diff --git a/media/gpu/BUILD.gn b/media/gpu/BUILD.gn
index 3a65c75..dd2d957 100644
index 613e830..a886955 100644
--- a/media/gpu/BUILD.gn
+++ b/media/gpu/BUILD.gn
@@ -25,6 +25,14 @@
@@ -24,6 +24,14 @@
import("//build/config/mac/mac_sdk.gni")
}
@ -787,16 +771,7 @@ index 3a65c75..dd2d957 100644
if (use_vaapi) {
action("libva_generate_stubs") {
extra_header = "va_stub_header.fragment"
@@ -258,7 +266,7 @@
}
}
- if (is_chromeos) {
+ if (is_chromeos || is_desktop_linux) {
sources += [
"vp8_decoder.cc",
"vp8_decoder.h",
@@ -341,6 +349,9 @@
@@ -334,6 +342,9 @@
"vaapi_drm_picture.h",
]
}
@ -806,47 +781,11 @@ index 3a65c75..dd2d957 100644
}
if (is_win) {
@@ -387,7 +398,7 @@
}
# TODO(watk): Run this on bots. http://crbug.com/461437
-if (is_win || is_android || is_chromeos) {
+if (is_win || is_android || is_chromeos || is_desktop_linux) {
test("video_decode_accelerator_unittest") {
sources = [
"video_accelerator_unittest_helpers.h",
@@ -500,7 +511,7 @@
}
}
-if (is_chromeos || is_mac || is_win) {
+if (is_chromeos || is_mac || is_win || is_desktop_linux) {
test("video_encode_accelerator_unittest") {
deps = [
"//base",
@@ -532,7 +543,7 @@
}
}
-if (is_chromeos) {
+if (is_chromeos || is_desktop_linux) {
test("jpeg_decode_accelerator_unittest") {
deps = [
"//base",
diff --git a/media/gpu/gpu_video_decode_accelerator_factory.cc b/media/gpu/gpu_video_decode_accelerator_factory.cc
index b440d26..1558796 100644
index 22f8f4a..ec6615d 100644
--- a/media/gpu/gpu_video_decode_accelerator_factory.cc
+++ b/media/gpu/gpu_video_decode_accelerator_factory.cc
@@ -18,7 +18,7 @@
#include "media/gpu/dxva_video_decode_accelerator_win.h"
#elif defined(OS_MACOSX)
#include "media/gpu/vt_video_decode_accelerator_mac.h"
-#elif defined(OS_CHROMEOS)
+#elif defined(OS_CHROMEOS) || defined(OS_LINUX)
#if defined(USE_V4L2_CODEC)
#include "media/gpu/v4l2_device.h"
#include "media/gpu/v4l2_slice_video_decode_accelerator.h"
@@ -85,6 +85,7 @@
@@ -86,6 +86,7 @@
// profile (instead of calculating a superset).
// TODO(posciak,henryhsu): improve this so that we choose a superset of
// resolutions and other supported profile parameters.
@ -854,24 +793,11 @@ index b440d26..1558796 100644
#if defined(OS_WIN)
capabilities.supported_profiles =
DXVAVideoDecodeAccelerator::GetSupportedProfiles(gpu_preferences,
diff --git a/media/gpu/gpu_video_encode_accelerator_factory.cc b/media/gpu/gpu_video_encode_accelerator_factory.cc
index d1b8ff3..c3f1f03 100644
--- a/media/gpu/gpu_video_encode_accelerator_factory.cc
+++ b/media/gpu/gpu_video_encode_accelerator_factory.cc
@@ -9,7 +9,7 @@
#include "media/gpu/features.h"
#include "media/gpu/gpu_video_accelerator_util.h"
-#if defined(OS_CHROMEOS)
+#if defined(OS_CHROMEOS) || defined(OS_LINUX)
#if defined(USE_V4L2_CODEC)
#include "media/gpu/v4l2_video_encode_accelerator.h"
#endif
diff --git a/media/gpu/vaapi_wrapper.cc b/media/gpu/vaapi_wrapper.cc
index 0739e56..b059fd4 100644
index 97ed997..14511cb 100644
--- a/media/gpu/vaapi_wrapper.cc
+++ b/media/gpu/vaapi_wrapper.cc
@@ -1110,6 +1110,7 @@
@@ -1116,6 +1116,7 @@
if (drm_file.IsValid())
GetDisplayState()->SetDrmFd(drm_file.GetPlatformFile());
#endif
@ -880,18 +806,10 @@ index 0739e56..b059fd4 100644
// static
diff --git a/services/ui/gpu/gpu_main.cc b/services/ui/gpu/gpu_main.cc
index f1b8567..15cf123 100644
index 0916374..cabf058 100644
--- a/services/ui/gpu/gpu_main.cc
+++ b/services/ui/gpu/gpu_main.cc
@@ -10,6 +10,7 @@
#include "base/power_monitor/power_monitor_device_source.h"
#include "base/single_thread_task_runner.h"
#include "base/threading/sequenced_task_runner_handle.h"
+#include "build/build_config.h"
#include "components/viz/service/display_embedder/gpu_display_provider.h"
#include "components/viz/service/frame_sinks/frame_sink_manager_impl.h"
#include "gpu/command_buffer/common/activity_flags.h"
@@ -79,7 +80,7 @@
@@ -79,7 +79,7 @@
thread_options.message_loop_type = base::MessageLoop::TYPE_IO;
#endif
@ -900,7 +818,7 @@ index f1b8567..15cf123 100644
thread_options.priority = base::ThreadPriority::DISPLAY;
#endif
CHECK(gpu_thread_.StartWithOptions(thread_options));
@@ -89,7 +90,7 @@
@@ -89,7 +89,7 @@
// should be possible to use |main_task_runner_| for doing IO tasks.
thread_options = base::Thread::Options(base::MessageLoop::TYPE_IO, 0);
thread_options.priority = base::ThreadPriority::NORMAL;

View File

@ -1,29 +1,70 @@
Source: https://aur.archlinux.org/packages/chromium-vaapi/ chromium-gn-bootstrap-r14.patch
Source: https://aur.archlinux.org/packages/chromium-vaapi/
commit 96c271f8ab2be7ea4199078ea65ac50c6ada4685
Author: Pawel Hajdan, Jr <phajdan.jr@chromium.org>
Date: Wed Jul 26 21:51:54 2017 +0000
wip
diff --git a/tools/gn/bootstrap/bootstrap.py b/tools/gn/bootstrap/bootstrap.py
index 1390560f8e37..ff2ae57c46b0 100755
--- a/tools/gn/bootstrap/bootstrap.py
+++ b/tools/gn/bootstrap/bootstrap.py
@@ -449,6 +449,7 @@ def write_gn_ninja(path, root_gen_dir, options):
@@ -179,6 +179,7 @@ def build_gn_with_ninja_manually(tempdir, options):
write_buildflag_header_manually(root_gen_dir, 'base/debug/debugging_flags.h',
{
+ 'ENABLE_LOCATION_SOURCE': 'false',
'ENABLE_PROFILING': 'false',
'CAN_UNWIND_WITH_FRAME_POINTERS': 'false'
})
@@ -204,7 +205,7 @@ def build_gn_with_ninja_manually(tempdir, options):
write_gn_ninja(os.path.join(tempdir, 'build.ninja'),
root_gen_dir, options)
- cmd = ['ninja', '-C', tempdir]
+ cmd = ['ninja', '-C', tempdir, '-w', 'dupbuild=err']
if options.verbose:
cmd.append('-v')
@@ -458,6 +459,7 @@ def write_gn_ninja(path, root_gen_dir, options):
'base/metrics/bucket_ranges.cc',
'base/metrics/field_trial.cc',
'base/metrics/field_trial_param_associator.cc',
+ 'base/metrics/field_trial_params.cc',
'base/metrics/histogram.cc',
'base/metrics/histogram_base.cc',
'base/metrics/histogram_functions.cc',
'base/metrics/histogram_samples.cc',
+ 'base/metrics/histogram_snapshot_manager.cc',
'base/metrics/metrics_hashes.cc',
'base/metrics/persistent_histogram_allocator.cc',
'base/metrics/persistent_memory_allocator.cc',
@@ -534,7 +535,7 @@ def write_gn_ninja(path, root_gen_dir, options):
'base/trace_event/heap_profiler_allocation_context_tracker.cc',
'base/trace_event/heap_profiler_allocation_register.cc',
'base/trace_event/heap_profiler_event_filter.cc',
- 'base/trace_event/heap_profiler_event_writer.cc',
+ 'base/trace_event/heap_profiler_heap_dump_writer.cc',
'base/trace_event/heap_profiler_serialization_state.cc',
'base/trace_event/heap_profiler_stack_frame_deduplicator.cc',
'base/trace_event/heap_profiler_type_name_deduplicator.cc',
@@ -507,6 +509,7 @@ def write_gn_ninja(path, root_gen_dir, options):
'base/task_scheduler/scheduler_lock_impl.cc',
'base/task_scheduler/scheduler_single_thread_task_runner_manager.cc',
'base/task_scheduler/scheduler_worker.cc',
+ 'base/task_scheduler/scheduler_worker_pool.cc',
'base/task_scheduler/scheduler_worker_pool_impl.cc',
'base/task_scheduler/scheduler_worker_pool_params.cc',
'base/task_scheduler/scheduler_worker_stack.cc',
@@ -523,6 +526,7 @@ def write_gn_ninja(path, root_gen_dir, options):
'base/third_party/icu/icu_utf.cc',
'base/third_party/nspr/prtime.cc',
'base/threading/post_task_and_reply_impl.cc',
+ 'base/threading/scoped_blocking_call.cc',
'base/threading/sequence_local_storage_map.cc',
'base/threading/sequenced_task_runner_handle.cc',
'base/threading/sequenced_worker_pool.cc',
@@ -579,7 +583,6 @@ def write_gn_ninja(path, root_gen_dir, options):
'base/unguessable_token.cc',
'base/value_iterators.cc',
'base/values.cc',
- 'base/value_iterators.cc',
'base/vlog.cc',
])
@@ -652,7 +655,6 @@ def write_gn_ninja(path, root_gen_dir, options):
static_libraries['base']['sources'].extend([
'base/memory/shared_memory_handle_posix.cc',
'base/memory/shared_memory_posix.cc',
- 'base/memory/shared_memory_tracker.cc',
'base/nix/xdg_util.cc',
'base/process/internal_linux.cc',
'base/process/memory_linux.cc',
@@ -827,7 +829,7 @@ def build_gn_with_gn(temp_gn, build_dir, options):
cmd = [temp_gn, 'gen', build_dir, '--args=%s' % gn_gen_args]
check_call(cmd)
- cmd = ['ninja', '-C', build_dir]
+ cmd = ['ninja', '-C', build_dir, '-w', 'dupbuild=err']
if options.verbose:
cmd.append('-v')
cmd.append('gn')

View File

@ -1,78 +0,0 @@
Source: https://aur.archlinux.org/packages/chromium-vaapi/ chromium-blink-gcc7.patch
--- chromium-59.0.3071.86/third_party/WebKit/Source/platform/wtf/LinkedHashSet.h.orig 2017-06-06 15:05:38.145247996 +0300
+++ chromium-59.0.3071.86/third_party/WebKit/Source/platform/wtf/LinkedHashSet.h 2017-06-06 15:06:13.866246667 +0300
@@ -685,6 +685,31 @@ inline LinkedHashSet<T, U, V, W>& Linked
return *this;
}
+inline void SwapAnchor(LinkedHashSetNodeBase& a, LinkedHashSetNodeBase& b) {
+ DCHECK(a.prev_);
+ DCHECK(a.next_);
+ DCHECK(b.prev_);
+ DCHECK(b.next_);
+ swap(a.prev_, b.prev_);
+ swap(a.next_, b.next_);
+ if (b.next_ == &a) {
+ DCHECK_EQ(b.prev_, &a);
+ b.next_ = &b;
+ b.prev_ = &b;
+ } else {
+ b.next_->prev_ = &b;
+ b.prev_->next_ = &b;
+ }
+ if (a.next_ == &b) {
+ DCHECK_EQ(a.prev_, &b);
+ a.next_ = &a;
+ a.prev_ = &a;
+ } else {
+ a.next_->prev_ = &a;
+ a.prev_->next_ = &a;
+ }
+}
+
template <typename T, typename U, typename V, typename W>
inline void LinkedHashSet<T, U, V, W>::Swap(LinkedHashSet& other) {
impl_.Swap(other.impl_);
@@ -877,31 +902,6 @@ inline void LinkedHashSet<T, U, V, W>::e
erase(Find(value));
}
-inline void SwapAnchor(LinkedHashSetNodeBase& a, LinkedHashSetNodeBase& b) {
- DCHECK(a.prev_);
- DCHECK(a.next_);
- DCHECK(b.prev_);
- DCHECK(b.next_);
- swap(a.prev_, b.prev_);
- swap(a.next_, b.next_);
- if (b.next_ == &a) {
- DCHECK_EQ(b.prev_, &a);
- b.next_ = &b;
- b.prev_ = &b;
- } else {
- b.next_->prev_ = &b;
- b.prev_->next_ = &b;
- }
- if (a.next_ == &b) {
- DCHECK_EQ(a.prev_, &b);
- a.next_ = &a;
- a.prev_ = &a;
- } else {
- a.next_->prev_ = &a;
- a.prev_->next_ = &a;
- }
-}
-
inline void swap(LinkedHashSetNodeBase& a, LinkedHashSetNodeBase& b) {
DCHECK_NE(a.next_, &a);
DCHECK_NE(b.next_, &b);
--- chromium-59.0.3071.86/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.orig 2017-06-06 16:16:43.657661313 +0300
+++ chromium-59.0.3071.86/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h 2017-06-06 16:16:50.911198032 +0300
@@ -5,6 +5,7 @@
#include "platform/PlatformExport.h"
#include "platform/wtf/ThreadSpecific.h"
+#include <functional>
#include <memory>
namespace gpu {

View File

@ -0,0 +1,10 @@
--- a/chrome/browser/ui/libgtkui/gtk_ui.h 2017-10-19 00:15:47.451704332 +0200
+++ b/chrome/browser/ui/libgtkui/gtk_ui.h 2017-10-18 23:53:19.328373980 +0200
@@ -14,6 +14,7 @@
#include "base/observer_list.h"
#include "chrome/browser/ui/libgtkui/gtk_signal.h"
#include "chrome/browser/ui/libgtkui/libgtkui_export.h"
+#include "chrome/browser/ui/libgtkui/nav_button_layout_manager.h"
#include "ui/gfx/color_utils.h"
#include "ui/views/linux_ui/linux_ui.h"
#include "ui/views/window/frame_buttons.h"

View File

@ -1,63 +0,0 @@
--- a/chrome/browser/ui/libgtkui/gtk_ui.cc 2017-09-07 23:15:07.376937045 +0200
+++ b/chrome/browser/ui/libgtkui/gtk_ui.cc 2017-09-07 23:16:15.281262029 +0200
@@ -1048,18 +1048,52 @@
native_theme_->NotifyObservers();
}
+float GtkDpiToScaleFactor(int dpi) {
+ // GTK multiplies the DPI by 1024 before storing it.
+ return dpi / (1024 * kDefaultDPI);
+}
+
+gint GetGdkScreenSettingInt(const char* setting_name) {
+ GValue value = G_VALUE_INIT;
+ g_value_init(&value, G_TYPE_INT);
+ if (!gdk_screen_get_setting(gdk_screen_get_default(), setting_name, &value))
+ return -1;
+ return g_value_get_int(&value);
+}
+
+float GetScaleFromGdkScreenSettings() {
+ gint window_scale = GetGdkScreenSettingInt("gdk-window-scaling-factor");
+ if (window_scale <= 0)
+ return -1;
+ gint font_dpi = GetGdkScreenSettingInt("gdk-unscaled-dpi");
+ if (font_dpi <= 0)
+ return -1;
+ return window_scale * GtkDpiToScaleFactor(font_dpi);
+}
+
+float GetScaleFromXftDPI() {
+ GtkSettings* gtk_settings = gtk_settings_get_default();
+ CHECK(gtk_settings);
+ gint gtk_dpi = -1;
+ g_object_get(gtk_settings, "gtk-xft-dpi", &gtk_dpi, nullptr);
+ if (gtk_dpi <= 0)
+ return -1;
+ return GtkDpiToScaleFactor(gtk_dpi);
+}
+
float GtkUi::GetRawDeviceScaleFactor() {
if (display::Display::HasForceDeviceScaleFactor())
return display::Display::GetForcedDeviceScaleFactor();
- GdkScreen* screen = gdk_screen_get_default();
- gint scale = gtk_widget_get_scale_factor(fake_window_);
- gdouble resolution = gdk_screen_get_resolution(screen);
- const float scale_factor =
- resolution <= 0 ? scale : resolution * scale / kDefaultDPI;
- // Blacklist scaling factors <120% (crbug.com/484400) and round
- // to 1 decimal to prevent rendering problems (crbug.com/485183).
- return scale_factor < 1.2f ? 1.0f : roundf(scale_factor * 10) / 10;
+ float scale = GetScaleFromGdkScreenSettings();
+ if (scale > 0)
+ return scale;
+
+ scale = GetScaleFromXftDPI();
+ if (scale > 0)
+ return scale;
+
+ return 1;
}
void GtkUi::UpdateDeviceScaleFactor() {

View File

@ -1,13 +0,0 @@
Source: https://aur.archlinux.org/packages/chromium-vaapi/ chromium-atk-r1.patch
--- a/content/browser/accessibility/browser_accessibility_auralinux.cc.orig 2017-07-27 06:28:01.090257874 +0000
+++ b/content/browser/accessibility/browser_accessibility_auralinux.cc 2017-07-27 06:28:21.174653680 +0000
@@ -571,7 +571,7 @@
// it's best to leave this out rather than break people's builds:
#if defined(ATK_CHECK_VERSION)
#if ATK_CHECK_VERSION(2, 16, 0)
- atk_state_set_add_state(atk_state_set, ATK_STATE_READ_ONLY);
+ atk_state_set_add_state(state_set, ATK_STATE_READ_ONLY);
#endif
#endif
break;

View File

@ -0,0 +1,74 @@
From d0f929a5db87cb34d03afb0d8e8bfc95b8f786e3 Mon Sep 17 00:00:00 2001
From: Victor Costan <costan@gmail.com>
Date: Mon, 11 Sep 2017 13:18:27 -0700
Subject: [PATCH] More conservative check for <string_view> availability. (#4)
has_include(<string_view>) does not imply that the header can be
included and will work. The assumption fails on MSVC and libc++ [1, 2].
Conversely, checking that __cplusplus > 201402L is not sufficient on its
own either, as the toolchain on Mac OS 10.12 passes that check but does
not contain a <string_view> header.
[1] https://crbug.com/759349
[2] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79433
---
include/crc32c/crc32c.h | 10 +++-------
src/crc32c_unittest.cc | 6 ++----
2 files changed, 5 insertions(+), 11 deletions(-)
diff --git a/include/crc32c/crc32c.h b/include/crc32c/crc32c.h
index 9f1973a..8ecab0d 100644
--- a/third_party/crc32c/src/include/crc32c/crc32c.h
+++ b/third_party/crc32c/src/include/crc32c/crc32c.h
@@ -33,22 +33,18 @@ inline uint32_t Crc32c(const std::string& string) {
string.size());
}
-#if defined(__has_include)
+#if __cplusplus > 201402L
#if __has_include(<string_view>)
-// Visual Studio provides a <string_view> header even in C++11 mode. When
-// included, the header issues an #error. (C1189)
-#if !defined(_MSC_VER) || __cplusplus >= 201703L
#include <string_view>
-// Comptues the CRC32C of the bytes in the string_view.
+// Computes the CRC32C of the bytes in the string_view.
inline uint32_t Crc32c(const std::string_view& string_view) {
return Crc32c(reinterpret_cast<const uint8_t*>(string_view.data()),
string_view.size());
}
-#endif // !defined(_MSC_VER) || __cplusplus >= 201703L
#endif // __has_include(<string_view>)
-#endif // defined(__has_include)
+#endif // __cplusplus > 201402L
} // namespace crc32c
diff --git a/src/crc32c_unittest.cc b/src/crc32c_unittest.cc
index 7a9c765..69babb3 100644
--- a/third_party/crc32c/src/src/crc32c_unittest.cc
+++ b/third_party/crc32c/src/src/crc32c_unittest.cc
@@ -95,9 +95,8 @@ TEST(CRC32CTest, Crc32cStdString) {
EXPECT_EQ(static_cast<uint32_t>(0x113fdb5c), crc32c::Crc32c(buf));
}
-#if defined(__has_include)
+#if __cplusplus > 201402L
#if __has_include(<string_view>)
-#if !defined(_MSC_VER) || __cplusplus >= 201703L
TEST(CRC32CTest, Crc32cStdStringView) {
uint8_t buf[32];
@@ -118,9 +117,8 @@ TEST(CRC32CTest, Crc32cStdStringView) {
EXPECT_EQ(static_cast<uint32_t>(0x113fdb5c), crc32c::Crc32c(view));
}
-#endif // !defined(_MSC_VER) || __cplusplus >= 201703L
#endif // __has_include(<string_view>)
-#endif // defined(__has_include)
+#endif // __cplusplus > 201402L
#define TESTED_EXTEND Extend
#include "./crc32c_extend_unittests.h"

View File

@ -94,6 +94,7 @@ fi
# start chromium
LD_PRELOAD=/usr/lib/libGL.so $ADDON_DIR/bin/chromium.bin \
$CHROMIUM_OPTS \
--no-sandbox \
--user-data-dir=$ADDON_HOME/profile \
--test-type $@ \
2>&1 | tee $ADDON_LOG_FILE