chromium: update to 70.0.3538.67.

[ci skip]
This commit is contained in:
Rasmus Thomsen 2018-10-19 02:32:08 +00:00 committed by Enno Boland
parent c6c6163b8e
commit 7221cd87f5
6 changed files with 862 additions and 69 deletions

View File

@ -0,0 +1,542 @@
diff -ur chrome/browser/about_flags.cc chromium-69.0.3497.92/chrome/browser/about_flags.cc
--- chrome/browser/about_flags.cc 2018-09-12 00:39:23.000000000 +0530
+++ chrome/browser/about_flags.cc 2018-09-13 22:10:33.938016199 +0530
@@ -1238,12 +1238,14 @@
{"ui-disable-partial-swap", flag_descriptions::kUiPartialSwapName,
flag_descriptions::kUiPartialSwapDescription, kOsAll,
SINGLE_DISABLE_VALUE_TYPE(switches::kUIDisablePartialSwap)},
+#if defined(OS_CHROMEOS) || defined(OS_ANDROID)
{"disable-webrtc-hw-decoding", flag_descriptions::kWebrtcHwDecodingName,
flag_descriptions::kWebrtcHwDecodingDescription, kOsAndroid | kOsCrOS,
SINGLE_DISABLE_VALUE_TYPE(switches::kDisableWebRtcHWDecoding)},
{"disable-webrtc-hw-encoding", flag_descriptions::kWebrtcHwEncodingName,
flag_descriptions::kWebrtcHwEncodingDescription, kOsAndroid | kOsCrOS,
SINGLE_DISABLE_VALUE_TYPE(switches::kDisableWebRtcHWEncoding)},
+#endif
{"enable-webrtc-hw-h264-encoding",
flag_descriptions::kWebrtcHwH264EncodingName,
flag_descriptions::kWebrtcHwH264EncodingDescription, kOsAndroid | kOsCrOS,
@@ -1612,6 +1614,13 @@
flag_descriptions::kShowTouchHudDescription, kOsCrOS,
SINGLE_VALUE_TYPE(ash::switches::kAshTouchHud)},
#endif // OS_CHROMEOS
+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(OS_ANDROID)
+ {
+ "enable-accelerated-video", flag_descriptions::kAcceleratedVideoName,
+ flag_descriptions::kAcceleratedVideoDescription, kOsLinux,
+ SINGLE_VALUE_TYPE(switches::kEnableAcceleratedVideo),
+ },
+#else
{
"disable-accelerated-video-decode",
flag_descriptions::kAcceleratedVideoDecodeName,
@@ -1619,6 +1628,7 @@
kOsMac | kOsWin | kOsCrOS | kOsAndroid,
SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedVideoDecode),
},
+#endif
#if defined(OS_WIN)
{"enable-hdr", flag_descriptions::kEnableHDRName,
flag_descriptions::kEnableHDRDescription, kOsWin,
@@ -2291,12 +2301,17 @@
FEATURE_VALUE_TYPE(features::kOpenVR)},
#endif // ENABLE_OPENVR
#endif // ENABLE_VR
-#if defined(OS_CHROMEOS)
+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(OS_ANDROID)
+ {"enable-accelerated-mjpeg-decode",
+ flag_descriptions::kAcceleratedMjpegDecodeName,
+ flag_descriptions::kAcceleratedMjpegDecodeDescription, kOsLinux,
+ SINGLE_VALUE_TYPE(switches::kEnableAcceleratedMjpegDecode)},
+#elif defined(OS_CHROMEOS)
{"disable-accelerated-mjpeg-decode",
flag_descriptions::kAcceleratedMjpegDecodeName,
flag_descriptions::kAcceleratedMjpegDecodeDescription, kOsCrOS,
SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedMjpegDecode)},
-#endif // OS_CHROMEOS
+#endif
{"v8-cache-options", flag_descriptions::kV8CacheOptionsName,
flag_descriptions::kV8CacheOptionsDescription, kOsAll,
MULTI_VALUE_TYPE(kV8CacheOptionsChoices)},
Only in chrome/browser: about_flags.cc.orig
diff -ur chrome/browser/chromeos/login/chrome_restart_request.cc chromium-69.0.3497.92/chrome/browser/chromeos/login/chrome_restart_request.cc
--- chrome/browser/chromeos/login/chrome_restart_request.cc 2018-09-12 00:39:23.000000000 +0530
+++ chrome/browser/chromeos/login/chrome_restart_request.cc 2018-09-13 22:10:33.986014728 +0530
@@ -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"
@@ -84,9 +85,14 @@
::switches::kDisable2dCanvasImageChromium,
::switches::kDisableAccelerated2dCanvas,
::switches::kDisableAcceleratedJpegDecoding,
+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(OS_ANDROID)
+ ::switches::kEnableAcceleratedMjpegDecode,
+ ::switches::kEnableAcceleratedVideo,
+#else
::switches::kDisableAcceleratedMjpegDecode,
::switches::kDisableAcceleratedVideoDecode,
::switches::kDisableAcceleratedVideoEncode,
+#endif
::switches::kDisableBlinkFeatures,
::switches::kDisableCastStreamingHWEncoding,
::switches::kDisableGpu,
@@ -160,8 +166,10 @@
::switches::kEnableWebGLImageChromium,
::switches::kEnableWebVR,
::switches::kEnableUnsafeWebGPU,
+#if (defined(OS_CHROMEOS) || defined(OS_ANDROID))
::switches::kDisableWebRtcHWDecoding,
::switches::kDisableWebRtcHWEncoding,
+#endif
::switches::kOzonePlatform,
ash::switches::kAshEnableTabletMode,
ash::switches::kAshEnableWaylandServer,
diff -ur chrome/browser/flag_descriptions.cc chromium-69.0.3497.92/chrome/browser/flag_descriptions.cc
--- chrome/browser/flag_descriptions.cc 2018-09-12 00:39:24.000000000 +0530
+++ chrome/browser/flag_descriptions.cc 2018-09-13 22:10:34.007014085 +0530
@@ -14,6+14,13 @@
"Enables the use of the GPU to perform 2d canvas rendering instead of "
"using software rendering.";
+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(OS_ANDROID)
+const char kAcceleratedVideoName[] = "Hardware-accelerated video";
+const char kAcceleratedVideoDescription[] =
+ "Hardware-accelerated video where VA-API driver is installed on the"
+ "system.";
+#endif
+
const char kAcceleratedVideoDecodeName[] = "Hardware-accelerated video decode";
const char kAcceleratedVideoDecodeDescription[] =
"Hardware-accelerated video decode where available.";
@@ -1986,6 +1993,7 @@
const char kWebrtcEchoCanceller3Description[] =
"Experimental WebRTC echo canceller (AEC3).";
+#if defined(OS_CHROMEOS) || defined(OS_ANDROID)
const char kWebrtcHwDecodingName[] = "WebRTC hardware video decoding";
const char kWebrtcHwDecodingDescription[] =
"Support in WebRTC for decoding video streams using platform hardware.";
@@ -1993,6 +2001,7 @@
const char kWebrtcHwEncodingName[] = "WebRTC hardware video encoding";
const char kWebrtcHwEncodingDescription[] =
"Support in WebRTC for encoding video streams using platform hardware.";
+#endif
const char kWebrtcHwH264EncodingName[] = "WebRTC hardware h264 video encoding";
const char kWebrtcHwH264EncodingDescription[] =
@@ -2892,14 +2901,16 @@
// 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";
const char kAcceleratedMjpegDecodeDescription[] =
"Enable hardware-accelerated mjpeg decode for captured frame where "
"available.";
+#endif
+#if defined(OS_CHROMEOS)
const char kAllowTouchpadThreeFingerClickName[] = "Touchpad three-finger-click";
const char kAllowTouchpadThreeFingerClickDescription[] =
"Enables touchpad three-finger-click as middle button.";
diff -ur chrome/browser/flag_descriptions.h chromium-69.0.3497.92/chrome/browser/flag_descriptions.h
--- chrome/browser/flag_descriptions.h 2018-09-12 00:39:24.000000000 +0530
+++ chrome/browser/flag_descriptions.h 2018-09-13 22:10:34.030013380 +0530
@@ -37,6 +37,10 @@
extern const char kAccelerated2dCanvasName[];
extern const char kAccelerated2dCanvasDescription[];
+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(OS_ANDROID)
+extern const char kAcceleratedVideoName[];
+extern const char kAcceleratedVideoDescription[];
+#endif
extern const char kAcceleratedVideoDecodeName[];
extern const char kAcceleratedVideoDecodeDescription[];
@@ -1762,13 +1766,17 @@
#endif // defined(OS_MACOSX)
-// Chrome OS ------------------------------------------------------------------
-
-#if defined(OS_CHROMEOS)
+#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID))
extern const char kAcceleratedMjpegDecodeName[];
extern const char kAcceleratedMjpegDecodeDescription[];
+#endif
+
+// Chrome OS ------------------------------------------------------------------
+
+#if defined(OS_CHROMEOS)
+
extern const char kAllowTouchpadThreeFingerClickName[];
extern const char kAllowTouchpadThreeFingerClickDescription[];
diff -ur content/browser/gpu/compositor_util.cc chromium-69.0.3497.92/content/browser/gpu/compositor_util.cc
--- content/browser/gpu/compositor_util.cc 2018-09-12 00:39:41.000000000 +0530
+++ content/browser/gpu/compositor_util.cc 2018-09-13 22:10:34.072012092 +0530
@@ -149,7 +149,11 @@
{"video_decode",
SafeGetFeatureStatus(gpu_feature_info,
gpu::GPU_FEATURE_TYPE_ACCELERATED_VIDEO_DECODE),
+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(OS_ANDROID)
+ !command_line.HasSwitch(switches::kEnableAcceleratedVideo),
+#else
command_line.HasSwitch(switches::kDisableAcceleratedVideoDecode),
+#endif
"Accelerated video decode has been disabled, either via blacklist, "
"about:flags or the command line.",
true, true},
diff -ur content/browser/gpu/gpu_process_host.cc chromium-69.0.3497.92/content/browser/gpu/gpu_process_host.cc
--- content/browser/gpu/gpu_process_host.cc 2018-09-12 00:39:41.000000000 +0530
+++ content/browser/gpu/gpu_process_host.cc 2018-09-13 22:10:34.113010836 +0530
@@ -209,7 +209,9 @@
switches::kDisableLogging,
switches::kDisableShaderNameHashing,
switches::kDisableSkiaRuntimeOpts,
+#if !defined(OS_LINUX)
switches::kDisableWebRtcHWEncoding,
+#endif
#if defined(OS_WIN)
switches::kEnableAcceleratedVpxDecode,
#endif
diff -ur content/browser/renderer_host/media/video_capture_browsertest.cc chromium-69.0.3497.92/content/browser/renderer_host/media/video_capture_browsertest.cc
--- content/browser/renderer_host/media/video_capture_browsertest.cc 2018-09-12 00:39:41.000000000 +0530
+++ content/browser/renderer_host/media/video_capture_browsertest.cc 2018-09-13 22:10:34.124010499 +0530
@@ -165,8 +165,13 @@
base::CommandLine::ForCurrentProcess()->AppendSwitch(
switches::kUseFakeJpegDecodeAccelerator);
} else {
+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(OS_ANDROID)
+ base::CommandLine::ForCurrentProcess()->AppendSwitch(
+ switches::kEnableAcceleratedMjpegDecode);
+#else
base::CommandLine::ForCurrentProcess()->AppendSwitch(
switches::kDisableAcceleratedMjpegDecode);
+#endif
}
}
diff -ur content/browser/renderer_host/render_process_host_impl.cc chromium-69.0.3497.92/content/browser/renderer_host/render_process_host_impl.cc
--- content/browser/renderer_host/render_process_host_impl.cc 2018-09-12 00:39:41.000000000 +0530
+++ content/browser/renderer_host/render_process_host_impl.cc 2018-09-13 22:10:34.133010223 +0530
@@ -2798,7 +2798,11 @@
switches::kDefaultTileHeight,
switches::kDisable2dCanvasImageChromium,
switches::kDisableAcceleratedJpegDecoding,
+#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
+ switches::kEnableAcceleratedVideo,
+#else
switches::kDisableAcceleratedVideoDecode,
+#endif
switches::kDisableBackgroundTasks,
switches::kDisableBackgroundTimerThrottling,
switches::kDisableBreakpad,
@@ -2933,8 +2937,10 @@
#if BUILDFLAG(ENABLE_RUNTIME_MEDIA_RENDERER_SELECTION)
switches::kDisableMojoRenderer,
#endif
+#if !defined(OS_LINUX) || defined(OS_CHROMEOS)
switches::kDisableWebRtcHWDecoding,
switches::kDisableWebRtcHWEncoding,
+#endif
switches::kEnableWebRtcSrtpAesGcm,
switches::kEnableWebRtcSrtpEncryptedHeaders,
switches::kEnableWebRtcStunOrigin,
Only in content/browser/renderer_host: render_process_host_impl.cc.orig
diff -ur content/browser/utility_process_host.cc chromium-69.0.3497.92/content/browser/utility_process_host.cc
--- content/browser/utility_process_host.cc 2018-09-12 00:39:41.000000000 +0530
+++ content/browser/utility_process_host.cc 2018-09-13 22:10:34.296005227 +0530
@@ -296,7 +296,11 @@
switches::kOverrideUseSoftwareGLForTests,
switches::kOverrideEnabledCdmInterfaceVersion,
switches::kProxyServer,
+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(OS_ANDROID)
+ switches::kEnableAcceleratedMjpegDecode,
+#else
switches::kDisableAcceleratedMjpegDecode,
+#endif
switches::kUseFakeDeviceForMediaStream,
switches::kUseFakeJpegDecodeAccelerator,
switches::kUseFileForFakeVideoCapture,
diff -ur content/browser/webrtc/webrtc_media_recorder_browsertest.cc chromium-69.0.3497.92/content/browser/webrtc/webrtc_media_recorder_browsertest.cc
--- content/browser/webrtc/webrtc_media_recorder_browsertest.cc 2018-09-12 00:39:41.000000000 +0530
+++ content/browser/webrtc/webrtc_media_recorder_browsertest.cc 2018-09-13 22:10:34.143009916 +0530
@@ -66,7 +66,12 @@
return;
// This flag is also used for encoding, https://crbug.com/616640.
base::CommandLine::ForCurrentProcess()->AppendSwitch(
- switches::kDisableAcceleratedVideoDecode);
+#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
+ switches::kEnableAcceleratedVideo
+#else
+ switches::kDisableAcceleratedVideoDecode
+#endif
+ );
}
private:
diff -ur content/gpu/BUILD.gn chromium-69.0.3497.92/content/gpu/BUILD.gn
--- content/gpu/BUILD.gn 2018-09-12 00:39:41.000000000 +0530
+++ content/gpu/BUILD.gn 2018-09-13 22:10:34.148009763 +0530
@@ -133,4 +133,8 @@
(!is_chromecast || is_cast_desktop_build)) {
configs += [ "//build/config/linux/dri" ]
}
+
+ if (is_desktop_linux) {
+ public_configs = [ "//media/gpu:libva_config" ]
+ }
}
diff -ur content/gpu/gpu_main.cc chromium-69.0.3497.92/content/gpu/gpu_main.cc
--- content/gpu/gpu_main.cc 2018-09-12 00:39:41.000000000 +0530
+++ content/gpu/gpu_main.cc 2018-09-13 22:10:34.153009610 +0530
@@ -284,7 +284,7 @@
base::PlatformThread::SetName("CrGpuMain");
-#if defined(OS_ANDROID) || defined(OS_CHROMEOS)
+#if defined(OS_LINUX)
// Set thread priority before sandbox initialization.
base::PlatformThread::SetCurrentThreadPriority(base::ThreadPriority::DISPLAY);
#endif
@@ -317,7 +317,7 @@
GetContentClient()->SetGpuInfo(gpu_init->gpu_info());
base::ThreadPriority io_thread_priority = base::ThreadPriority::NORMAL;
-#if defined(OS_ANDROID) || defined(OS_CHROMEOS)
+#if defined(OS_LINUX)
io_thread_priority = base::ThreadPriority::DISPLAY;
#endif
diff -ur content/public/browser/gpu_utils.cc chromium-69.0.3497.92/content/public/browser/gpu_utils.cc
--- content/public/browser/gpu_utils.cc 2018-09-12 00:39:42.000000000 +0530
+++ content/public/browser/gpu_utils.cc 2018-09-13 22:10:34.164009273 +0530
@@ -57,9 +57,17 @@
gpu_preferences.in_process_gpu =
command_line->HasSwitch(switches::kInProcessGPU);
gpu_preferences.disable_accelerated_video_decode =
+#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
+ !command_line->HasSwitch(switches::kEnableAcceleratedVideo);
+#else
command_line->HasSwitch(switches::kDisableAcceleratedVideoDecode);
+#endif
gpu_preferences.disable_accelerated_video_encode =
+#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
+ !command_line->HasSwitch(switches::kEnableAcceleratedVideo);
+#else
command_line->HasSwitch(switches::kDisableAcceleratedVideoEncode);
+#endif
#if defined(OS_WIN)
uint32_t enable_accelerated_vpx_decode_val =
gpu::GpuPreferences::VPX_VENDOR_MICROSOFT;
diff -ur content/public/common/content_switches.cc chromium-69.0.3497.92/content/public/common/content_switches.cc
--- content/public/common/content_switches.cc 2018-09-12 00:39:42.000000000 +0530
+++ content/public/common/content_switches.cc 2018-09-13 22:10:34.172009028 +0530
@@ -79,6 +79,11 @@
// Disable gpu-accelerated 2d canvas.
const char kDisableAccelerated2dCanvas[] = "disable-accelerated-2d-canvas";
+#if defined(OS_LINUX)
+// Enables hardware acceleration of video for Linux only. VA-API driver
+// is required to be present on the system installation.
+const char kEnableAcceleratedVideo[] = "enable-accelerated-video";
+#endif
// Disables hardware acceleration of video decode, where available.
const char kDisableAcceleratedVideoDecode[] =
"disable-accelerated-video-decode";
@@ -868,11 +873,13 @@
// ignores this switch on its stable and beta channels.
const char kDisableWebRtcEncryption[] = "disable-webrtc-encryption";
+#if defined(OS_CHROMEOS)
// Disables HW decode acceleration for WebRTC.
const char kDisableWebRtcHWDecoding[] = "disable-webrtc-hw-decoding";
// Disables HW encode acceleration for WebRTC.
const char kDisableWebRtcHWEncoding[] = "disable-webrtc-hw-encoding";
+#endif
// Enables negotiation of GCM cipher suites from RFC 7714 for SRTP in WebRTC.
// See https://tools.ietf.org/html/rfc7714 for further information.
diff -ur content/public/common/content_switches.h chromium-69.0.3497.92/content/public/common/content_switches.h
--- content/public/common/content_switches.h 2018-09-12 00:39:42.000000000 +0530
+++ content/public/common/content_switches.h 2018-09-13 22:10:34.172009028 +0530
@@ -104,6 +104,9 @@
CONTENT_EXPORT extern const char kDomAutomationController[];
extern const char kDisable2dCanvasClipAntialiasing[];
CONTENT_EXPORT extern const char kDumpBlinkRuntimeCallStats[];
+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(OS_ANDROID)
+CONTENT_EXPORT extern const char kEnableAcceleratedVideo[];
+#endif
CONTENT_EXPORT extern const char kEnableAccessibilityObjectModel[];
CONTENT_EXPORT extern const char kEnableAggressiveDOMStorageFlushing[];
CONTENT_EXPORT extern const char kEnableAutomation[];
@@ -241,8 +244,10 @@
CONTENT_EXPORT extern const char kWaitForDebuggerChildren[];
CONTENT_EXPORT extern const char kDisableWebRtcEncryption[];
+#if defined(OS_CHROMEOS)
CONTENT_EXPORT extern const char kDisableWebRtcHWDecoding[];
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[];
diff -ur content/renderer/media/webrtc/peer_connection_dependency_factory.cc chromium-69.0.3497.92/content/renderer/media/webrtc/peer_connection_dependency_factory.cc
--- content/renderer/media/webrtc/peer_connection_dependency_factory.cc 2018-09-12 00:39:42.000000000 +0530
+++ content/renderer/media/webrtc/peer_connection_dependency_factory.cc 2018-09-13 22:10:34.181008752 +0530
@@ -276,10 +276,18 @@
const base::CommandLine* cmd_line = base::CommandLine::ForCurrentProcess();
if (gpu_factories && gpu_factories->IsGpuVideoAcceleratorEnabled()) {
+#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
+ if (cmd_line->HasSwitch(switches::kEnableAcceleratedVideo))
+#else
if (!cmd_line->HasSwitch(switches::kDisableWebRtcHWDecoding))
+#endif
decoder_factory.reset(new RTCVideoDecoderFactory(gpu_factories));
+#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
+ if (cmd_line->HasSwitch(switches::kEnableAcceleratedVideo))
+#else
if (!cmd_line->HasSwitch(switches::kDisableWebRtcHWEncoding))
+#endif
encoder_factory.reset(new RTCVideoEncoderFactory(gpu_factories));
}
diff -ur content/renderer/render_thread_impl.cc chromium-69.0.3497.92/content/renderer/render_thread_impl.cc
--- content/renderer/render_thread_impl.cc 2018-09-12 00:39:42.000000000 +0530
+++ content/renderer/render_thread_impl.cc 2018-09-13 22:10:34.192008415 +0530
@@ -1441,7 +1441,11 @@
kGpuStreamPriorityMedia);
const bool enable_video_accelerator =
+#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
+ cmd_line->HasSwitch(switches::kEnableAcceleratedVideo) &&
+#else
!cmd_line->HasSwitch(switches::kDisableAcceleratedVideoDecode) &&
+#endif
(gpu_channel_host->gpu_feature_info()
.status_values[gpu::GPU_FEATURE_TYPE_ACCELERATED_VIDEO_DECODE] ==
gpu::kGpuFeatureStatusEnabled);
Only in content/renderer: render_thread_impl.cc.orig
diff -ur gpu/config/software_rendering_list.json chromium-69.0.3497.92/gpu/config/software_rendering_list.json
--- gpu/config/software_rendering_list.json 2018-09-12 00:39:44.000000000 +0530
+++ gpu/config/software_rendering_list.json 2018-09-13 22:10:34.193008384 +0530
@@ -377,17 +377,6 @@
]
},
{
- "id": 48,
- "description": "Accelerated video decode is unavailable on Linux",
- "cr_bugs": [137247],
- "os": {
- "type": "linux"
- },
- "features": [
- "accelerated_video_decode"
- ]
- },
- {
"id": 50,
"description": "Disable VMware software renderer on older Mesa",
"cr_bugs": [145531, 332596, 571899, 629434],
diff -ur media/base/media_switches.cc chromium-69.0.3497.92/media/base/media_switches.cc
--- media/base/media_switches.cc 2018-09-12 00:39:48.000000000 +0530
+++ media/base/media_switches.cc 2018-09-13 22:10:34.214007740 +0530
@@ -117,10 +117,15 @@
// accelerator hardware to be present.
const char kUseFakeJpegDecodeAccelerator[] = "use-fake-jpeg-decode-accelerator";
+#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
+// Enable hardware accelerated mjpeg decode on linux
+const char kEnableAcceleratedMjpegDecode[] = "enable-accelerated-mjpeg-decode";
+#else
// Disable hardware acceleration of mjpeg decode for captured frame, where
// available.
const char kDisableAcceleratedMjpegDecode[] =
"disable-accelerated-mjpeg-decode";
+#endif
// When running tests on a system without the required hardware or libraries,
// this flag will cause the tests to fail. Otherwise, they silently succeed.
@@ -462,15 +467,22 @@
#endif
bool IsVideoCaptureAcceleratedJpegDecodingEnabled() {
+
+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(OS_ANDROID)
+ if (!base::CommandLine::ForCurrentProcess()->HasSwitch(
+ switches::kEnableAcceleratedMjpegDecode)
+#else
if (base::CommandLine::ForCurrentProcess()->HasSwitch(
- switches::kDisableAcceleratedMjpegDecode)) {
+ switches::kDisableAcceleratedMjpegDecode)
+#endif
+ ) {
return false;
}
if (base::CommandLine::ForCurrentProcess()->HasSwitch(
switches::kUseFakeJpegDecodeAccelerator)) {
return true;
}
-#if defined(OS_CHROMEOS)
+#if !defined(OS_ANDROID) && defined(OS_LINUX)
return true;
#endif
return false;
diff -ur media/base/media_switches.h chromium-69.0.3497.92/media/base/media_switches.h
--- media/base/media_switches.h 2018-09-12 00:39:48.000000000 +0530
+++ media/base/media_switches.h 2018-09-13 22:10:34.283005625 +0530
@@ -66,7 +66,11 @@
MEDIA_EXPORT extern const char kUseFileForFakeVideoCapture[];
MEDIA_EXPORT extern const char kUseFileForFakeAudioCapture[];
MEDIA_EXPORT extern const char kUseFakeJpegDecodeAccelerator[];
+#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
+MEDIA_EXPORT extern const char kEnableAcceleratedMjpegDecode[];
+#else
MEDIA_EXPORT extern const char kDisableAcceleratedMjpegDecode[];
+#endif
MEDIA_EXPORT extern const char kRequireAudioHardwareForTesting[];
MEDIA_EXPORT extern const char kMuteAudio[];
diff -ur media/gpu/BUILD.gn chromium-69.0.3497.92/media/gpu/BUILD.gn
--- media/gpu/BUILD.gn 2018-09-12 00:39:48.000000000 +0530
+++ media/gpu/BUILD.gn 2018-09-13 22:10:34.210007863 +0530
@@ -495,6 +495,14 @@
}
}
+if (is_desktop_linux && use_vaapi) {
+ import("//build/config/linux/pkg_config.gni")
+
+ pkg_config("libva_config") {
+ packages = [ "libva" ]
+ }
+}
+
if (use_vaapi) {
test("jpeg_encode_accelerator_unittest") {
deps = [
@@ -559,6 +567,10 @@
if (use_ozone) {
deps += [ "//ui/ozone" ]
}
+
+ if (is_desktop_linux) {
+ public_configs = [ ":libva_config" ]
+ }
}
}

View File

@ -0,0 +1,30 @@
Upstream: Yes
Source:https://chromium.googlesource.com/chromium/src.git/+/e3ad3deb6a6e79284f3748fa7410311d87df91c5
From e3ad3deb6a6e79284f3748fa7410311d87df91c5 Mon Sep 17 00:00:00 2001
From: Henrique Nakashima <hnakashima@chromium.org>
Date: Tue, 4 Sep 2018 16:49:51 +0000
Subject: [PATCH] IWYU: stdint.h in pdfium_mem_buffer_file_write.h for uint8_t
Bug: 879900
Change-Id: I9c15d1c280a23c53d31f2d72c9d0d1db79eab886
Reviewed-on: https://chromium-review.googlesource.com/1204410
Reviewed-by: Lei Zhang <thestig@chromium.org>
Commit-Queue: Henrique Nakashima <hnakashima@chromium.org>
Cr-Commit-Position: refs/heads/master@{#588547}
---
pdf/pdfium/pdfium_mem_buffer_file_write.h | 1 +
1 file changed, 1 insertion(+)
diff --git a/pdf/pdfium/pdfium_mem_buffer_file_write.h b/pdf/pdfium/pdfium_mem_buffer_file_write.h
index 03c54bb63800e..82e82d23684d8 100644
--- pdf/pdfium/pdfium_mem_buffer_file_write.h
+++ pdf/pdfium/pdfium_mem_buffer_file_write.h
@@ -6,6 +6,7 @@
#define PDF_PDFIUM_PDFIUM_MEM_BUFFER_FILE_WRITE_H_
#include <stddef.h>
+#include <stdint.h>
#include <vector>

View File

@ -0,0 +1,99 @@
Upstream: Yes
Source: https://chromium.googlesource.com/chromium/src/+/87902b3202f81d689dd314c17006ffc907fe12a1
From 87902b3202f81d689dd314c17006ffc907fe12a1 Mon Sep 17 00:00:00 2001
From: Wang Qing <wangqing-hf@loongson.cn>
Date: Mon, 3 Sep 2018 02:41:08 +0000
Subject: [PATCH] Fix build error for blink.
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
This CLs fixed the error of constexpr function call to non-constexpr function.
Bug: 878202
Change-Id: I6ad217a687e62a9a384980d852743a56479de3a9
Reviewed-on: https://chromium-review.googlesource.com/1192467
Commit-Queue: 汪 清 <wangqing-hf@loongson.cn>
Reviewed-by: Eric Willigers <ericwilligers@chromium.org>
Cr-Commit-Position: refs/heads/master@{#588316}
---
.../core/animation/animation_time_delta.cc | 22 ++++++++++++++
.../core/animation/animation_time_delta.h | 30 +++++++------------
2 files changed, 32 insertions(+), 20 deletions(-)
diff --git a/third_party/blink/renderer/core/animation/animation_time_delta.cc b/third_party/blink/renderer/core/animation/animation_time_delta.cc
index 1b25469c7f2f5..2e30a18890dab 100644
--- third_party/blink/renderer/core/animation/animation_time_delta.cc
+++ third_party/blink/renderer/core/animation/animation_time_delta.cc
@@ -7,6 +7,28 @@
namespace blink {
#if !defined(BLINK_ANIMATION_USE_TIME_DELTA)
+// Comparison operators on AnimationTimeDelta.
+bool CORE_EXPORT operator==(const AnimationTimeDelta& lhs,
+ const AnimationTimeDelta& rhs) {
+ return lhs.InSecondsF() == rhs.InSecondsF();
+}
+bool CORE_EXPORT operator!=(const AnimationTimeDelta& lhs,
+ const AnimationTimeDelta& rhs) {
+ return lhs.InSecondsF() != rhs.InSecondsF();
+}
+bool CORE_EXPORT operator>(const AnimationTimeDelta& lhs,
+ const AnimationTimeDelta& rhs) {
+ return lhs.InSecondsF() > rhs.InSecondsF();
+}
+bool CORE_EXPORT operator>=(const AnimationTimeDelta& lhs,
+ const AnimationTimeDelta& rhs) {
+ return lhs.InSecondsF() >= rhs.InSecondsF();
+}
+bool CORE_EXPORT operator<=(const AnimationTimeDelta& lhs,
+ const AnimationTimeDelta& rhs) {
+ return lhs.InSecondsF() <= rhs.InSecondsF();
+}
+
std::ostream& operator<<(std::ostream& os, AnimationTimeDelta time) {
return os << time.InSecondsF() << " s";
}
diff --git a/third_party/blink/renderer/core/animation/animation_time_delta.h b/third_party/blink/renderer/core/animation/animation_time_delta.h
index 1903c1150d3ec..95d218466d90a 100644
--- third_party/blink/renderer/core/animation/animation_time_delta.h
+++ third_party/blink/renderer/core/animation/animation_time_delta.h
@@ -90,26 +90,16 @@ AnimationTimeDelta operator*(T a, AnimationTimeDelta td) {
}
// Comparison operators on AnimationTimeDelta.
-constexpr bool CORE_EXPORT operator==(const AnimationTimeDelta& lhs,
- const AnimationTimeDelta& rhs) {
- return lhs.InSecondsF() == rhs.InSecondsF();
-}
-constexpr bool CORE_EXPORT operator!=(const AnimationTimeDelta& lhs,
- const AnimationTimeDelta& rhs) {
- return lhs.InSecondsF() != rhs.InSecondsF();
-}
-constexpr bool CORE_EXPORT operator>(const AnimationTimeDelta& lhs,
- const AnimationTimeDelta& rhs) {
- return lhs.InSecondsF() > rhs.InSecondsF();
-}
-constexpr bool CORE_EXPORT operator>=(const AnimationTimeDelta& lhs,
- const AnimationTimeDelta& rhs) {
- return lhs.InSecondsF() >= rhs.InSecondsF();
-}
-constexpr bool CORE_EXPORT operator<=(const AnimationTimeDelta& lhs,
- const AnimationTimeDelta& rhs) {
- return lhs.InSecondsF() <= rhs.InSecondsF();
-}
+bool CORE_EXPORT operator==(const AnimationTimeDelta& lhs,
+ const AnimationTimeDelta& rhs);
+bool CORE_EXPORT operator!=(const AnimationTimeDelta& lhs,
+ const AnimationTimeDelta& rhs);
+bool CORE_EXPORT operator>(const AnimationTimeDelta& lhs,
+ const AnimationTimeDelta& rhs);
+bool CORE_EXPORT operator>=(const AnimationTimeDelta& lhs,
+ const AnimationTimeDelta& rhs);
+bool CORE_EXPORT operator<=(const AnimationTimeDelta& lhs,
+ const AnimationTimeDelta& rhs);
// Defined to allow DCHECK_EQ/etc to work with the class.
CORE_EXPORT std::ostream& operator<<(std::ostream& os, AnimationTimeDelta time);

View File

@ -0,0 +1,37 @@
Upstream: Yes
Source: https://chromium.googlesource.com/chromium/src/+/cbdb8bd6567c8143dc8c1e5e86a21a8ea064eea4
From cbdb8bd6567c8143dc8c1e5e86a21a8ea064eea4 Mon Sep 17 00:00:00 2001
From: Maksim Sisov <msisov@igalia.com>
Date: Fri, 7 Sep 2018 18:57:42 +0000
Subject: [PATCH] OmniboxTextView: fix gcc error for structure initialization
It looks like there is bug in GCC 6, which cannot go through
structure initialization normally.
Thus, instead of a default initialization of one of the members,
explicitly initialize it to a default value.
Change-Id: Ia55cc6658e6b6b2f8a80c2582dd28f001c9e648c
Reviewed-on: https://chromium-review.googlesource.com/1213181
Reviewed-by: Scott Violet <sky@chromium.org>
Commit-Queue: Maksim Sisov <msisov@igalia.com>
Cr-Commit-Position: refs/heads/master@{#589614}
---
chrome/browser/ui/views/omnibox/omnibox_text_view.cc | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/chrome/browser/ui/views/omnibox/omnibox_text_view.cc b/chrome/browser/ui/views/omnibox/omnibox_text_view.cc
index f0a8083dc9300..9021284f166de 100644
--- chrome/browser/ui/views/omnibox/omnibox_text_view.cc
+++ chrome/browser/ui/views/omnibox/omnibox_text_view.cc
@@ -175,7 +175,8 @@ void ApplyTextStyleForType(SuggestionAnswer::TextStyle text_style,
style = {part_color, .baseline = gfx::SUPERIOR};
break;
case SuggestionAnswer::TextStyle::BOLD:
- style = {part_color, .weight = gfx::Font::Weight::BOLD};
+ style = {part_color, .baseline = gfx::NORMAL_BASELINE,
+ .weight = gfx::Font::Weight::BOLD};
break;
case SuggestionAnswer::TextStyle::NORMAL:
case SuggestionAnswer::TextStyle::NORMAL_DIM:

View File

@ -0,0 +1,70 @@
Upstream: Yes
Source: https://chromium.googlesource.com/chromium/src/+/e98f8ef8b2f236ecbb01df8c39e6ee1c8fbe8d7d
From e98f8ef8b2f236ecbb01df8c39e6ee1c8fbe8d7d Mon Sep 17 00:00:00 2001
From: Maksim Sisov <msisov@igalia.com>
Date: Thu, 13 Sep 2018 15:17:29 +0000
Subject: [PATCH] ScrollPaintPropertyNode: Rename SnapContainerData() to
GetSnapContainerData()
GCC is stricter than clang when it comes to class members' names and how
they can change the meaning of a previously existing symbol with the same
name.
Here is a short error message:
error: changes meaning of 'SnapContainerData' from 'using SnapContainerData =
class cc::SnapContainerData' [-fpermissive] using SnapContainerData =
cc::SnapContainerData;
Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_slimming_paint_v2;master.tryserver.blink:linux_trusty_blink_rel
Change-Id: I0de5460f17b13484253e1ff0538b111c9a3b0d13
Reviewed-on: https://chromium-review.googlesource.com/1213180
Commit-Queue: Maksim Sisov <msisov@igalia.com>
Reviewed-by: Philip Rogers <pdr@chromium.org>
Cr-Commit-Position: refs/heads/master@{#591015}
---
.../renderer/core/paint/paint_property_tree_update_tests.cc | 2 +-
.../platform/graphics/compositing/property_tree_manager.cc | 2 +-
.../platform/graphics/paint/scroll_paint_property_node.h | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/third_party/blink/renderer/core/paint/paint_property_tree_update_tests.cc b/third_party/blink/renderer/core/paint/paint_property_tree_update_tests.cc
index 0d999d45076f3..1fe1815a5659c 100644
--- third_party/blink/renderer/core/paint/paint_property_tree_update_tests.cc
+++ third_party/blink/renderer/core/paint/paint_property_tree_update_tests.cc
@@ -1310,7 +1310,7 @@ TEST_P(PaintPropertyTreeUpdateTest, EnsureSnapContainerData) {
GetDocument().View()->Resize(300, 300);
GetDocument().View()->UpdateAllLifecyclePhases();
- auto doc_snap_container_data = DocScroll()->SnapContainerData();
+ auto doc_snap_container_data = DocScroll()->GetSnapContainerData();
ASSERT_TRUE(doc_snap_container_data);
EXPECT_EQ(doc_snap_container_data->scroll_snap_type().axis, SnapAxis::kBoth);
EXPECT_EQ(doc_snap_container_data->scroll_snap_type().strictness,
diff --git a/third_party/blink/renderer/platform/graphics/compositing/property_tree_manager.cc b/third_party/blink/renderer/platform/graphics/compositing/property_tree_manager.cc
index 745b8c8b387ea..5f87eeea94357 100644
--- third_party/blink/renderer/platform/graphics/compositing/property_tree_manager.cc
+++ third_party/blink/renderer/platform/graphics/compositing/property_tree_manager.cc
@@ -333,7 +333,7 @@ void PropertyTreeManager::CreateCompositorScrollNode(
scroll_node->OverscrollBehaviorX()),
static_cast<cc::OverscrollBehavior::OverscrollBehaviorType>(
scroll_node->OverscrollBehaviorY()));
- compositor_node.snap_container_data = scroll_node->SnapContainerData();
+ compositor_node.snap_container_data = scroll_node->GetSnapContainerData();
auto compositor_element_id = scroll_node->GetCompositorElementId();
if (compositor_element_id) {
diff --git a/third_party/blink/renderer/platform/graphics/paint/scroll_paint_property_node.h b/third_party/blink/renderer/platform/graphics/paint/scroll_paint_property_node.h
index e1479269ccc37..5bd7f65f10bac 100644
--- third_party/blink/renderer/platform/graphics/paint/scroll_paint_property_node.h
+++ third_party/blink/renderer/platform/graphics/paint/scroll_paint_property_node.h
@@ -99,7 +99,7 @@ class PLATFORM_EXPORT ScrollPaintPropertyNode
return state_.overscroll_behavior.y;
}
- base::Optional<SnapContainerData> SnapContainerData() const {
+ base::Optional<SnapContainerData> GetSnapContainerData() const {
return state_.snap_container_data;
}

View File

@ -1,22 +1,23 @@
# Template file for 'chromium'
pkgname=chromium
# See http://www.chromium.org/developers/calendar for the latest version
version=69.0.3497.100
version=70.0.3538.67
revision=1
short_desc="Google's attempt at creating a safer, faster, and more stable browser"
maintainer="Rasmus Thomsen <rasmus.thomsen@protonmail.com>"
homepage="https://www.chromium.org/"
license="BSD-3-Clause"
distfiles="https://commondatastorage.googleapis.com/chromium-browser-official/${pkgname}-${version}.tar.xz"
checksum=e3391560e73e25fb4afc3f2dd5616607e2dbfc58aa88251a2c5d6b7096fe9e35
checksum=e956c2031f634300ada8c09e0777f0c560f4798963f144edaaec8d43e1e30e37
only_for_archs="i686 x86_64 x86_64-musl"
lib32disabled=yes
nodebug=yes
nopie=yes # contains tools that are not PIE, enables PIE itself
build_options="clang"
build_options="clang jumbo_build"
desc_option_clang="Use clang to build"
desc_option_jumbo_build="Do a jumbo build, needs way more RAM but builds way faster"
hostmakedepends="$(vopt_if clang clang) yasm python pkg-config perl gperf bison ninja nodejs hwids
libatomic-devel libevent-devel libglib-devel"
@ -32,16 +33,27 @@ makedepends="libpng-devel gtk+-devel gtk+3-devel nss-devel pciutils-devel
ffmpeg-devel"
depends="libexif hwids desktop-file-utils hicolor-icon-theme"
build_options_default="jumbo_build"
# Chromium's VAAPI stuff doesn't build on i686
if [ "${XBPS_TARGET_MACHINE}" != "i686" ]; then
makedepends+=" libva-devel"
fi
post_extract() {
case "${XBPS_TARGET_MACHINE}" in
*-musl)
for f in ${FILESDIR}/musl-patches/*.patch; do
for f in "${FILESDIR}"/musl-patches/*.patch; do
echo "Applying $f"
patch -Np0 -i "$f"
done
;;
esac
if [ "${XBPS_TARGET_MACHINE}" != "i686" ]; then
patch -Np0 -i "${FILESDIR}"/chromium-enable-vaapi.patch
fi
# Use the file at run time instead of effectively compiling it in
sed 's|//third_party/usb_ids/usb.ids|/usr/share/hwdata/usb.ids|g' \
-i device/usb/BUILD.gn
@ -59,7 +71,7 @@ post_extract() {
fi
}
do_configure() {
local system="" bootstrap_conf="" conf=""
local system="" conf=()
export -n CFLAGS CXXFLAGS LDFLAGS
if [ "$build_option_clang" ]; then
@ -89,6 +101,7 @@ do_configure() {
libevent
libjpeg
libpng
libwebp
libxml
libxslt
opus
@ -97,10 +110,9 @@ do_configure() {
yasm
"
# TODO: is this still broken?
[ -z "$CROSS_BUILD" ] && system+=" libwebp"
# remove build scripts for system provided dependencies
# remove build scripts for system provided dependencies - basically does the
# same as the bundeled script to remove bundeled libs, but this way we don't
# have to list the remaining libs
for LIB in ${system} libjpeg_turbo; do
find -type f -path "*third_party/$LIB/*" \
\! -path "*third_party/$LIB/chromium/*" \
@ -117,48 +129,45 @@ do_configure() {
python2 third_party/libaddressinput/chromium/tools/update-strings.py
bootstrap_conf="is_clang=$(vopt_if clang true false)"
bootstrap_conf+=' treat_warnings_as_errors=false binutils_path="/usr/bin"'
bootstrap_conf+=' gold_path="/usr/bin/ld.gold" use_sysroot=false'
bootstrap_conf+=' use_allocator="none" use_allocator_shim=false'
# XXX: gold broken with musl
case "${XBPS_TARGET_MACHINE}" in
*-musl) bootstrap_conf+=' use_gold=false' ;;
*) bootstrap_conf+=' use_gold=true' ;;
esac
AR="ar" CC=$CC_FOR_BUILD CXX=$CXX_FOR_BUILD LD=$CXX_FOR_BUILD \
python2 tools/gn/bootstrap/bootstrap.py -s -v \
--gn-gen-args "${bootstrap_conf}"
# Google API keys (see http://www.chromium.org/developers/how-tos/api-keys)
# Note: These are for Void Linux use ONLY.
conf+='
google_api_key="AIzaSyA9gWazKaHaNIPPg2hrMj6_ZSG8AFmq738"
google_default_client_id="126659149423-hoo6ickbk3p1u2qjsdsp0ddciurfvb4t.apps.googleusercontent.com"
google_default_client_secret="_ozIx2D-DKm_se_2NPwV4l5b"'
conf+=(
'google_api_key="AIzaSyA9gWazKaHaNIPPg2hrMj6_ZSG8AFmq738"'
'google_default_client_id="126659149423-hoo6ickbk3p1u2qjsdsp0ddciurfvb4t.apps.googleusercontent.com"'
'google_default_client_secret="_ozIx2D-DKm_se_2NPwV4l5b"'
)
conf+=(
'enable_nacl=false'
'enable_nacl_nonsfi=false'
"is_clang=$(vopt_if clang true false)"
'is_debug=false'
'clang_use_chrome_plugins=false'
'custom_toolchain="//build/toolchain/linux/unbundle:default"'
'host_toolchain="//build/toolchain/linux/unbundle:default"'
'remove_webcore_debug_symbols=true'
'symbol_level=0'
'icu_use_data_file=true'
'use_allocator="none"'
'use_allocator_shim=false'
'use_cups=true'
'use_pulseaudio=true'
'use_sysroot=false'
'use_system_harfbuzz=true'
'enable_widevine=true'
'enable_hangout_services_extension=true'
'is_desktop_linux=true'
)
conf+=' enable_nacl=false enable_nacl_nonsfi=false'
# Jumbo/Unity builds: https://chromium.googlesource.com/chromium/src/+/master/docs/jumbo.md
conf+=( "use_jumbo_build=$(vopt_if jumbo_build true false)" )
conf+=" is_clang=$(vopt_if clang true false)"
conf+=' is_debug=false
clang_use_chrome_plugins=false
custom_toolchain="//build/toolchain/linux/unbundle:default"
host_toolchain="//build/toolchain/linux/unbundle:default"
remove_webcore_debug_symbols=true
symbol_level=0
icu_use_data_file=true
use_allocator="none"
use_allocator_shim=false
use_cups=true
use_pulseaudio=true
use_sysroot=false
use_system_harfbuzz=true
enable_widevine=true
enable_hangout_services_extension=true'
# Enable VAAPI. Doesn't compile on i686
if [ "${XBPS_TARGET_MACHINE}" != "i686" ]; then
conf+=(
'use_vaapi=true'
)
fi
# Use explicit library dependencies instead of dlopen.
# GN only has "link_pulseaudio", the other options used before are not available atm
@ -167,55 +176,61 @@ do_configure() {
# linux_link_libpci=true
# linux_link_libspeechd=true
# libspeechd_h_prefix=\"speech-dispatcher/\""
conf+=' link_pulseaudio=true'
conf+=( 'link_pulseaudio=true' )
# Never use bundled binutils/gold binary.
conf+="
binutils_path=\"${XBPS_CROSS_BASE}/usr/bin\"
gold_path=\"${XBPS_CROSS_BASE}/usr/bin/ld.gold\"
linux_use_bundled_binutils=false
use_custom_libcxx=false
use_lld=false"
conf+=(
"binutils_path=\"${XBPS_CROSS_BASE}/usr/bin\""
"gold_path=\"${XBPS_CROSS_BASE}/usr/bin/ld.gold\""
'linux_use_bundled_binutils=false'
'use_custom_libcxx=false'
'use_lld=false'
)
# XXX: gold broken with musl
case "${XBPS_TARGET_MACHINE}" in
*-musl) conf+=' use_gold=false' ;;
*) conf+=' use_gold=true' ;;
*-musl) conf+=( 'use_gold=false' ) ;;
*) conf+=( 'use_gold=true' ) ;;
esac
# Always support proprietary codecs.
# Enable H.264 support in bundled ffmpeg.
conf+='
proprietary_codecs=true
ffmpeg_branding="Chrome"'
conf+=(
'proprietary_codecs=true'
'ffmpeg_branding="Chrome"'
)
# Make sure that -Werror doesn't get added to CFLAGS by the build system.
# Depending on GCC version the warnings are different and we don't want
# the build to fail because of that.
conf+='
treat_warnings_as_errors=false
fatal_linker_warnings=false'
conf+=(
'treat_warnings_as_errors=false'
'fatal_linker_warnings=false'
)
# Save space by removing DLOG and DCHECK messages (about 6% reduction).
# conf+=" logging_like_official_build=true"
conf+=' fieldtrial_testing_like_official_build=true'
conf+=( fieldtrial_testing_like_official_build=true )
case "${XBPS_TARGET_MACHINE}" in
x86_64*) conf+=' target_cpu="x64"' ;;
i686*) conf+=' target_cpu="x86"' ;;
arm*) conf+=' target_cpu="arm"' ;;
aarch64*) conf+=' target_cpu="arm64"' ;;
x86_64*) conf+=( 'target_cpu="x64"' ) ;;
i686*) conf+=( 'target_cpu="x86"' ) ;;
arm*) conf+=( 'target_cpu="arm"' ) ;;
aarch64*) conf+=( 'target_cpu="arm64"' ) ;;
esac
out/Release/gn gen out/Release --args="${conf// / }"
AR="ar" CC=$CC_FOR_BUILD CXX=$CXX_FOR_BUILD LD=$CXX_FOR_BUILD \
python2 tools/gn/bootstrap/bootstrap.py -s -v \
--gn-gen-args "${conf[*]}"
out/Release/gn gen out/Release --args="${conf[*]}"
}
do_build() {
ninja -C out/Release ${makejobs} chrome chrome_sandbox chromedriver
ninja -C out/Release ${makejobs} chrome chromedriver mksnapshot
}
do_install() {
vinstall out/Release/chrome 755 usr/lib/${pkgname} ${pkgname}
vinstall out/Release/chromedriver 755 usr/lib/${pkgname} chromedriver
vinstall out/Release/chrome_sandbox 4755 usr/lib/${pkgname} chrome-sandbox
cp out/Release/{*.pak,*.bin} ${DESTDIR}/usr/lib/chromium
cp -a out/Release/locales ${DESTDIR}/usr/lib/chromium