Updated to 68.0.3440.106

This commit is contained in:
Алзим 2018-08-13 15:03:08 +03:00
parent ab41a7f2e2
commit df8d77824a
15 changed files with 471 additions and 189 deletions

View file

@ -1,5 +1,5 @@
sources:
chromium-66.0.3359.181.tar.xz: 5c3f055f227666ecadbc5d0e3ba999b4ffb318d1
chromium-68.0.3440.106.tar.xz: a52bdc6623286a7681939096cf57ca1aafa29aec
depot_tools.tar.xz: 082b7f9a4dfa7eb03900755b4866aef2d73543a5
icons.tar.bz2: a835954af164bf38f8ea4ea80608839bed7800a3
new-system-icons.tar.xz: 89339b8b3b05359a8745ed7968fe148902a2fa28

View file

@ -5,7 +5,7 @@ diff -urN chromium-30.0.1599.66.orig/chrome/browser/first_run/first_run_internal
base::FilePath MasterPrefsPath() {
// The standard location of the master prefs is next to the chrome binary.
base::FilePath master_prefs;
- if (!PathService::Get(base::DIR_EXE, &master_prefs))
- if (!base::PathService::Get(base::DIR_EXE, &master_prefs))
- return base::FilePath();
+ master_prefs = base::FilePath("/etc/chromium-browser");
return master_prefs.AppendASCII(installer::kDefaultMasterPrefs);

View file

@ -102,7 +102,7 @@ diff -up chromium-60.0.3112.40/third_party/pdfium/core/fxcodec/codec/fx_codec_jp
diff -up chromium-60.0.3112.40/third_party/pdfium/third_party/BUILD.gn.pdfium-system-libtiff-libpng chromium-60.0.3112.40/third_party/pdfium/third_party/BUILD.gn
--- chromium-60.0.3112.40/third_party/pdfium/third_party/BUILD.gn.pdfium-system-libtiff-libpng 2017-06-22 00:04:10.000000000 +0200
+++ chromium-60.0.3112.40/third_party/pdfium/third_party/BUILD.gn 2017-06-24 22:25:18.901585830 +0200
@@ -354,48 +354,14 @@
@@ -356,49 +356,14 @@
}
}
@ -124,6 +124,7 @@ diff -up chromium-60.0.3112.40/third_party/pdfium/third_party/BUILD.gn.pdfium-sy
- configs -= [ "//build/config/compiler:chromium_code" ]
- configs += [
- "//build/config/compiler:no_chromium_code",
- "//build/config/sanitizers:cfi_icall_generalize_pointers",
- ":pdfium_third_party_config",
-
- # Must be after no_chromium_code for warning flags to be ordered correctly.
@ -157,7 +158,7 @@ diff -up chromium-60.0.3112.40/third_party/pdfium/third_party/BUILD.gn.pdfium-sy
}
config("system_libpng_config") {
@@ -474,61 +440,13 @@
@@ -477,61 +442,13 @@
}
}

View file

@ -1,10 +0,0 @@
--- chromium-60.0.3112.40/third_party/WebKit/Source/platform/wtf/BUILD.gn.bignum-werror-fix 2017-06-22 00:03:16.000000000 +0200
+++ chromium-60.0.3112.40/third_party/WebKit/Source/platform/wtf/BUILD.gn 2017-06-25 13:21:32.311720897 +0200
@@ -296,6 +296,7 @@
libs = [ "log" ]
}
if (is_linux) {
+ cflags = [ "-Wno-error=strict-overflow" ]
libs = [ "dl" ]
}

View file

@ -1,43 +0,0 @@
diff -up chromium-55.0.2873.0/build/linux/unbundle/jsoncpp.gn.gn-system-icu-jsoncpp chromium-55.0.2873.0/build/linux/unbundle/jsoncpp.gn
--- chromium-55.0.2873.0/build/linux/unbundle/jsoncpp.gn.gn-system-icu-jsoncpp 2016-10-01 16:21:27.343107786 +0200
+++ chromium-55.0.2873.0/build/linux/unbundle/jsoncpp.gn 2016-10-01 16:21:27.343107786 +0200
@@ -0,0 +1,28 @@
+# Copyright 2016 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+import("//build/config/linux/pkg_config.gni")
+import("//build/shim_headers.gni")
+
+shim_headers("jsoncpp_shim") {
+ root_path = "source/include"
+ headers = [
+ "json/assertions.h",
+ "json/autolink.h",
+ "json/config.h",
+ "json/features.h",
+ "json/forwards.h",
+ "json/json.h",
+ "json/reader.h",
+ "json/value.h",
+ "json/writer.h"
+ ]
+}
+
+source_set("jsoncpp") {
+ deps = [
+ ":jsoncpp_shim",
+ ]
+ libs = [ "jsoncpp" ]
+}
diff -up chromium-55.0.2873.0/build/linux/unbundle/replace_gn_files.py.gn-system-icu-jsoncpp chromium-55.0.2873.0/build/linux/unbundle/replace_gn_files.py
--- chromium-55.0.2873.0/build/linux/unbundle/replace_gn_files.py.gn-system-icu-jsoncpp 2016-10-01 16:21:27.343107786 +0200
+++ chromium-55.0.2873.0/build/linux/unbundle/replace_gn_files.py 2016-10-01 17:17:38.913721403 +0200
@@ -23,6 +23,7 @@
'freetype': 'build/config/freetype/freetype.gni',
'harfbuzz-ng': 'third_party/harfbuzz-ng/harfbuzz.gni',
'icu': 'third_party/icu/BUILD.gn',
+ 'jsoncpp' : 'third_party/jsoncpp/BUILD.gn',
'libdrm': 'third_party/libdrm/BUILD.gn',
'libevent': 'base/third_party/libevent/BUILD.gn',
'libjpeg': 'build/secondary/third_party/libjpeg_turbo/BUILD.gn',

View file

@ -1,16 +1,16 @@
diff -up chromium-62.0.3192.0/media/base/audio_codecs.cc.extra-media chromium-62.0.3192.0/media/base/audio_codecs.cc
--- chromium-62.0.3192.0/media/base/audio_codecs.cc.extra-media 2017-08-22 21:04:45.000000000 +0200
+++ chromium-62.0.3192.0/media/base/audio_codecs.cc 2017-08-30 15:39:09.735186077 +0200
@@ -44,6 +44,8 @@ std::string GetCodecName(AudioCodec code
return "alac";
case kCodecAC3:
@@ -46,6 +46,8 @@ std::string GetCodecName(AudioCodec code
return "ac3";
case kCodecMpegHAudio:
return "mpeg-h-audio";
+ case kCodecDTS:
+ return "dts";
}
NOTREACHED();
return "";
@@ -68,6 +70,8 @@ AudioCodec StringToAudioCodec(const std:
@@ -72,6 +74,8 @@ AudioCodec StringToAudioCodec(const std:
return kCodecVorbis;
if (base::StartsWith(codec_id, "mp4a.40.", base::CompareCase::SENSITIVE))
return kCodecAAC;
@ -22,18 +22,18 @@ diff -up chromium-62.0.3192.0/media/base/audio_codecs.cc.extra-media chromium-62
diff -up chromium-62.0.3192.0/media/base/audio_codecs.h.extra-media chromium-62.0.3192.0/media/base/audio_codecs.h
--- chromium-62.0.3192.0/media/base/audio_codecs.h.extra-media 2017-08-22 21:04:45.000000000 +0200
+++ chromium-62.0.3192.0/media/base/audio_codecs.h 2017-08-30 15:39:09.735186077 +0200
@@ -32,13 +32,14 @@ enum AudioCodec {
kCodecPCM_ALAW = 14,
@@ -33,13 +33,14 @@
kCodecALAC = 15,
kCodecAC3 = 16,
+ kCodecDTS = 17,
kCodecMpegHAudio = 17,
+ kCodecDTS = 18,
// DO NOT ADD RANDOM AUDIO CODECS!
//
// The only acceptable time to add a new codec is if there is production code
// that uses said codec in the same CL.
// Must always be equal to the largest entry ever logged.
- kAudioCodecMax = kCodecAC3,
- kAudioCodecMax = kCodecMpegHAudio,
+ kAudioCodecMax = kCodecDTS,
};
@ -41,7 +41,7 @@ diff -up chromium-62.0.3192.0/media/base/audio_codecs.h.extra-media chromium-62.
diff -up chromium-62.0.3192.0/media/base/decode_capabilities.cc.extra-media chromium-62.0.3192.0/media/base/decode_capabilities.cc
--- chromium-62.0.3192.0/media/base/decode_capabilities.cc.extra-media 2017-08-22 21:04:45.000000000 +0200
+++ chromium-62.0.3192.0/media/base/decode_capabilities.cc 2017-08-30 15:39:09.737186041 +0200
@@ -146,6 +146,9 @@ bool IsSupportedAudioConfig(const AudioC
@@ -134,6 +134,9 @@ bool IsSupportedAudioConfig(const AudioC
case media::kCodecPCM_S24BE:
case media::kCodecPCM_ALAW:
case media::kCodecVorbis:
@ -51,17 +51,17 @@ diff -up chromium-62.0.3192.0/media/base/decode_capabilities.cc.extra-media chro
return true;
case media::kCodecAMR_NB:
@@ -157,9 +160,7 @@ bool IsSupportedAudioConfig(const AudioC
@@ -145,9 +148,7 @@ bool IsSupportedAudioConfig(const AudioC
return false;
#endif
- case media::kCodecEAC3:
case media::kCodecALAC:
- case media::kCodecAC3:
case media::kCodecMpegHAudio:
case media::kUnknownAudioCodec:
return false;
}
@@ -179,13 +180,13 @@ bool IsSupportedVideoConfig(const VideoC
@@ -176,13 +177,13 @@ bool IsSupportedVideoConfig(const VideoC
case media::kCodecH264:
case media::kCodecVP8:
case media::kCodecTheora:
@ -80,7 +80,7 @@ diff -up chromium-62.0.3192.0/media/base/decode_capabilities.cc.extra-media chro
diff -up chromium-62.0.3192.0/media/base/mime_util_internal.cc.extra-media chromium-62.0.3192.0/media/base/mime_util_internal.cc
--- chromium-62.0.3192.0/media/base/mime_util_internal.cc.extra-media 2017-08-22 21:04:45.000000000 +0200
+++ chromium-62.0.3192.0/media/base/mime_util_internal.cc 2017-08-30 15:44:46.519076991 +0200
@@ -74,6 +74,10 @@
@@ -74,6 +74,10 @@ const base::flat_map<std::string, MimeUt
{"vorbis", MimeUtil::VORBIS}, {"opus", MimeUtil::OPUS},
{"flac", MimeUtil::FLAC}, {"vp8", MimeUtil::VP8},
{"vp8.0", MimeUtil::VP8}, {"theora", MimeUtil::THEORA},
@ -91,7 +91,7 @@ diff -up chromium-62.0.3192.0/media/base/mime_util_internal.cc.extra-media chrom
// TODO(dalecurtis): This is not the correct final string. Fix before enabling
// by default. http://crbug.com/784607
#if BUILDFLAG(ENABLE_AV1_DECODER)
@@ -175,6 +179,9 @@
@@ -177,6 +181,9 @@ VideoCodec MimeUtilToVideoCodec(MimeUtil
return kCodecTheora;
case MimeUtil::DOLBY_VISION:
return kCodecDolbyVision;
@ -101,7 +101,7 @@ diff -up chromium-62.0.3192.0/media/base/mime_util_internal.cc.extra-media chrom
default:
break;
}
@@ -269,6 +276,32 @@
@@ -271,6 +278,32 @@ void MimeUtil::AddSupportedMediaFormats(
CodecSet ogg_codecs(ogg_audio_codecs);
ogg_codecs.insert(ogg_video_codecs.begin(), ogg_video_codecs.end());
@ -134,8 +134,8 @@ diff -up chromium-62.0.3192.0/media/base/mime_util_internal.cc.extra-media chrom
const CodecSet webm_audio_codecs{OPUS, VORBIS};
CodecSet webm_video_codecs{VP8, VP9};
#if BUILDFLAG(ENABLE_AV1_DECODER)
@@ -303,6 +336,8 @@
#endif // BUILDFLAG(ENABLE_AC3_EAC3_AUDIO_DEMUXING)
@@ -309,6 +342,8 @@ void MimeUtil::AddSupportedMediaFormats(
#endif // BUILDFLAG(ENABLE_MPEG_H_AUDIO_DEMUXING)
mp4_video_codecs.emplace(H264);
+ mp4_video_codecs.emplace(MPEG4_SP);
@ -143,7 +143,7 @@ diff -up chromium-62.0.3192.0/media/base/mime_util_internal.cc.extra-media chrom
#if BUILDFLAG(ENABLE_HEVC_DEMUXING)
mp4_video_codecs.emplace(HEVC);
#endif // BUILDFLAG(ENABLE_HEVC_DEMUXING)
@@ -340,12 +375,16 @@
@@ -346,12 +381,16 @@ void MimeUtil::AddSupportedMediaFormats(
DCHECK(!mp4_video_codecs.empty());
AddContainerWithCodecs("video/mp4", mp4_codecs, false);
@ -160,7 +160,7 @@ diff -up chromium-62.0.3192.0/media/base/mime_util_internal.cc.extra-media chrom
#if BUILDFLAG(ENABLE_MSE_MPEG2TS_STREAM_PARSER)
// TODO(ddorwin): Exactly which codecs should be supported?
@@ -975,10 +1014,14 @@
@@ -975,10 +1014,14 @@ bool MimeUtil::IsCodecProprietary(Codec
case H264:
case HEVC:
case DOLBY_VISION:
@ -178,11 +178,11 @@ diff -up chromium-62.0.3192.0/media/base/mime_util_internal.cc.extra-media chrom
diff -up chromium-62.0.3192.0/media/base/mime_util_internal.h.extra-media chromium-62.0.3192.0/media/base/mime_util_internal.h
--- chromium-62.0.3192.0/media/base/mime_util_internal.h.extra-media 2017-08-22 21:04:45.000000000 +0200
+++ chromium-62.0.3192.0/media/base/mime_util_internal.h 2017-08-30 15:39:09.734186095 +0200
@@ -45,7 +45,11 @@
THEORA,
@@ -46,7 +46,11 @@ class MEDIA_EXPORT MimeUtil {
DOLBY_VISION,
AV1,
- LAST_CODEC = AV1
MPEG_H_AUDIO,
- LAST_CODEC = MPEG_H_AUDIO
+ DTS,
+ MP2,
+ MPEG4_SP,
@ -236,18 +236,18 @@ diff -up chromium-62.0.3192.0/media/filters/ffmpeg_video_decoder.cc.extra-media
diff -up chromium-62.0.3192.0/media/remoting/proto_enum_utils.cc.extra-media chromium-62.0.3192.0/media/remoting/proto_enum_utils.cc
--- chromium-62.0.3192.0/media/remoting/proto_enum_utils.cc.extra-media 2017-08-22 21:04:45.000000000 +0200
+++ chromium-62.0.3192.0/media/remoting/proto_enum_utils.cc 2017-08-30 15:39:09.736186059 +0200
@@ -57,6 +57,7 @@ base::Optional<AudioCodec> ToMediaAudioC
CASE_RETURN_OTHER(kCodecPCM_ALAW);
@@ -58,6 +58,7 @@ base::Optional<AudioCodec> ToMediaAudioC
CASE_RETURN_OTHER(kCodecALAC);
CASE_RETURN_OTHER(kCodecAC3);
CASE_RETURN_OTHER(kCodecMpegHAudio);
+ CASE_RETURN_OTHER(kCodecDTS);
}
return base::nullopt; // Not a 'default' to ensure compile-time checks.
}
@@ -83,6 +84,7 @@ base::Optional<pb::AudioDecoderConfig::C
CASE_RETURN_OTHER(kCodecPCM_ALAW);
@@ -85,6 +86,7 @@ base::Optional<pb::AudioDecoderConfig::C
CASE_RETURN_OTHER(kCodecALAC);
CASE_RETURN_OTHER(kCodecAC3);
CASE_RETURN_OTHER(kCodecMpegHAudio);
+ CASE_RETURN_OTHER(kCodecDTS);
}
return base::nullopt; // Not a 'default' to ensure compile-time checks.
@ -255,20 +255,20 @@ diff -up chromium-62.0.3192.0/media/remoting/proto_enum_utils.cc.extra-media chr
diff -up chromium-62.0.3192.0/media/remoting/rpc.proto.extra-media chromium-62.0.3192.0/media/remoting/rpc.proto
--- chromium-62.0.3192.0/media/remoting/rpc.proto.extra-media 2017-08-22 21:04:45.000000000 +0200
+++ chromium-62.0.3192.0/media/remoting/rpc.proto 2017-08-30 15:39:09.736186059 +0200
@@ -66,6 +66,7 @@ message AudioDecoderConfig {
kCodecPCM_ALAW = 14;
@@ -67,6 +67,7 @@ message AudioDecoderConfig {
kCodecALAC = 15;
kCodecAC3 = 16;
+ kCodecDTS = 17;
kCodecMpegHAudio = 17;
+ kCodecDTS = 18;
}
// Proto version of media::SampleFormat.
diff -up chromium-62.0.3192.0/net/base/mime_util.cc.extra-media chromium-62.0.3192.0/net/base/mime_util.cc
--- chromium-62.0.3192.0/net/base/mime_util.cc.extra-media 2017-08-22 21:04:46.000000000 +0200
+++ chromium-62.0.3192.0/net/base/mime_util.cc 2017-08-30 15:47:23.952221630 +0200
@@ -91,6 +91,9 @@ static const MimeInfo kPrimaryMappings[]
{"image/jpeg", "jpeg,jpg"},
@@ -94,6 +94,9 @@
{"image/png", "png"},
{"image/apng", "png"},
{"image/webp", "webp"},
+ {"video/x-matroska", "mkv"},
+ {"audio/x-matroska", "mkv"},
@ -276,7 +276,7 @@ diff -up chromium-62.0.3192.0/net/base/mime_util.cc.extra-media chromium-62.0.31
{"multipart/related", "mht,mhtml"},
{"text/css", "css"},
{"text/html", "html,htm,shtml,shtm"},
@@ -492,6 +495,7 @@ static const char* const kStandardAudioT
@@ -495,6 +498,7 @@
"audio/vorbis",
"audio/wav",
"audio/webm",
@ -284,7 +284,7 @@ diff -up chromium-62.0.3192.0/net/base/mime_util.cc.extra-media chromium-62.0.31
"audio/x-m4a",
"audio/x-ms-wma",
"audio/vnd.rn-realaudio",
@@ -509,8 +513,10 @@ static const char* const kStandardVideoT
@@ -512,8 +516,10 @@
"video/webm",
"video/x-dv",
"video/x-m4v",

View file

@ -0,0 +1,22 @@
--- chromium-68.0.3440.106/build/toolchain/gcc_toolchain.gni-orig 2018-08-08 22:10:32.000000000 +0300
+++ chromium-68.0.3440.106/build/toolchain/gcc_toolchain.gni 2018-08-11 18:42:17.259611096 +0300
@@ -339,7 +339,7 @@
# We use slightly different arflags for AIX.
extra_arflags = "-r -c -s"
} else {
- extra_arflags = "-r -c -s -D"
+ extra_arflags = "rcsD"
}
# Almost all targets build with //build/config/compiler:thin_archive which
--- chromium-68.0.3440.106/build/config/compiler/BUILD.gn-orig 2018-08-11 10:15:29.000000000 +0300
+++ chromium-68.0.3440.106/build/config/compiler/BUILD.gn 2018-08-11 18:47:35.366897524 +0300
@@ -1595,7 +1595,7 @@
# have a "thin archive" mode (it does accept -T, but it means truncating
# archive names to 16 characters, which is not what we want).
if ((is_posix && !is_nacl && !is_mac && !is_ios) || is_fuchsia) {
- arflags = [ "-T" ]
+ # arflags = [ "-T" ]
}
}

View file

@ -0,0 +1,11 @@
--- chromium-68.0.3440.7/third_party/blink/renderer/platform/image-encoders/image_encoder.h.system-libjpeg 2018-05-31 12:46:15.000000000 +0200
+++ chromium-68.0.3440.7/third_party/blink/renderer/platform/image-encoders/image_encoder.h 2018-06-02 21:16:02.569351181 +0200
@@ -7,7 +7,7 @@
#include "third_party/blink/renderer/platform/platform_export.h"
#include "third_party/blink/renderer/platform/wtf/vector.h"
-#include "third_party/libjpeg/jpeglib.h" // for JPEG_MAX_DIMENSION
+#include "jpeglib.h" // for JPEG_MAX_DIMENSION
#include "third_party/libwebp/src/webp/encode.h" // for WEBP_MAX_DIMENSION
#include "third_party/skia/include/core/SkStream.h"
#include "third_party/skia/include/encode/SkJpegEncoder.h"

View file

@ -34,7 +34,7 @@
Summary: A fast web browser based on the Blink engine
Name: chromium-browser-stable
Version: 66.0.3359.181
Version: 68.0.3440.106
Release: 2
License: BSD, LGPL
Group: Networking/WWW
@ -55,10 +55,10 @@ Source999: new-system-icons.tar.xz
Patch4: chromium-30.0.1599.66-master-prefs-path.patch
Patch22: chromium-54-proprietary-codecs-assert.patch
# (cjw) disable werror for a compilation warning that causes the build to fail
Patch23: chromium-53-bignum-werror-fix.patch
%if 0%{jsoncpp}
# (cjw) add missing unbundle gn files (1)
Patch28: chromium-53-gn-system-icu-jsoncpp.patch
%endif
# (cjw) build pdfium with system libtiff and libpng
Patch30: chromium-52-pdfium-system-libtiff-libpng.patch
# (cjw) Recognize mimetypes for matroska (.mkv) and AVI (.avi) formats (video/x-matroska and audio/x-matroska, video/x-msvideo) + handle A52 "AC3" and DTS compressed audio.
@ -69,6 +69,8 @@ Patch35: chromium-50-system-ffmpeg-3.patch
Patch36: chromium-58-glib.patch
# clang builtin subtract functions, scoped enum
Patch47: chromium-61-gcc5.patch
# (cjw) fix jpeglib.h include
Patch188: chromium-68-system-libjpeg.patch
# New from Debian
Patch500: chromium-third-party-cookies-off-by-default.patch
@ -82,8 +84,8 @@ Patch502: chromium-45.0.2454.101-system-icu-54-does-not-have-detectHostTimeZone.
# fix build with icu other than 54
Patch504: chromium-system-icu-r0.patch
# https://aur.archlinux.org/packages/chromium-vaapi/
Patch508: chromium-vaapi-r18.patch
Patch509: chromium-widevine.patch
Patch508: chromium-vaapi-r19.patch
Patch509: chromium-widevine-r2.patch
# ROSA Build
Patch600: chromium-buildname-60.0.3112.90.patch
@ -94,9 +96,11 @@ Patch601: chromium-62-include-cstdlib.patch
Patch602: chromium-gcc5-r4.patch
# https://github.com/RussianFedora/chromium/blob/fedora-stable/chromium-66.0.3359.81-system-clang.patch
Patch603: chromium-66.0.3359.81-system-clang.patch
Patch604: chromium-clang-r2.patch
# http://ftp.riken.jp/Linux/gentoo/www-client/chromium/files/
Patch604: chromium-compiler-r2.patch
Patch605: chromium-ffmpeg-r1.patch
# https://chromium.googlesource.com/chromium/src/+/40a8d84a54ac47d3299194c5377aebd71714f1f0%5E%21/
Patch607: chromium-67.0.3396.87-fix-build-llvm-ar.patch
Provides: %{crname} = %{EVRD}
Conflicts: chromium-browser-unstable
@ -122,7 +126,7 @@ BuildRequires: bzip2-devel
BuildRequires: cap-devel
BuildRequires: cups-devel
BuildRequires: elfutils-devel
BuildRequires: jpeg-devel < 2.0.0
BuildRequires: jpeg-devel
%if 0%{jsoncpp}
BuildRequires: jsoncpp-devel
%endif
@ -251,7 +255,7 @@ chromium-browser-unstable package instead.
%package -n chromedriver
Summary: WebDriver for Google Chrome/Chromium
Group: Development/Other
Requires: %{name} = %{version}-%{release}
Requires: %{name} = %{EVRD}
%description -n chromedriver
WebDriver is an open source tool for automated testing of webapps across many
@ -272,8 +276,9 @@ members of the Chromium and WebDriver teams.
%patch4 -p1 -b .prefs
%patch22 -p1
%patch23 -p1
%if 0%{jsoncpp}
%patch28 -p1
%endif
%patch30 -p1
%patch32 -p1
%if 0%{?ffmpeg}
@ -281,6 +286,7 @@ members of the Chromium and WebDriver teams.
%endif
%patch36 -p1
%patch47 -p1
%patch188 -p1
# new from debian
%patch500 -p1
@ -304,6 +310,8 @@ members of the Chromium and WebDriver teams.
%patch604 -p1
%patch605 -p1
%patch607 -p1
mkdir -p third_party/llvm-build/Release+Asserts/bin
pushd third_party/llvm-build/Release+Asserts/bin
ln -sf /usr/bin/clang clang
@ -350,7 +358,7 @@ rm -rf third_party/yasm/source/
rm -rf third_party/zlib/{*.[ch],contrib/minizip}
rm -rf tools/gyp/test/
#rm -rf v8/test/
rm -f third_party/pdfium/third_party/libtiff/*.[ch]
#rm -f third_party/pdfium/third_party/libtiff/*.[ch]
rm -f third_party/skia/platform_tools/android/apps/gradle/wrapper/gradle-wrapper.jar
rm -f third_party/WebKit/Source/devtools/scripts/jsdoc-validator/jsdoc-validator.jar
@ -417,6 +425,22 @@ ln -s /usr/bin/node third_party/node/linux/node-linux-x64/bin/node
%define is_clang false
%endif
# widevinecdmadapter
# Build error with widevinecdmadapter in 67.0.3396.62
%define widevine 1
%if 0%{?widevine}
%define is_widevine true
%else
%define is_widevine false
%endif
%define lld 1
%if 0%{?lld}
%define is_lld true
%else
%define is_lld false
%endif
# v NO TABS IN HERE!
%define gn_config use_sysroot=false \
system_libdir="%{_lib}" \
@ -428,15 +452,12 @@ ln -s /usr/bin/node third_party/node/linux/node-linux-x64/bin/node
use_gold=%{use_gold} \
custom_toolchain="%{_sourcedir}:default" \
proprietary_codecs=true \
linux_link_libgio = true \
linux_link_libudev = true \
linux_link_libspeechd = true \
enable_ac3_eac3_audio_demuxing=true \
enable_mse_mpeg2ts_stream_parser=true \
enable_hevc_demuxing=true \
use_system_libjpeg=true \
use_libjpeg_turbo=false \
enable_widevine=true \
enable_widevine=%{is_widevine} \
pdf_enable_xfa=true \
use_pulseaudio=true \
use_allocator="none" \
@ -448,7 +469,7 @@ ln -s /usr/bin/node third_party/node/linux/node-linux-x64/bin/node
is_clang=%{is_clang} \
clang_use_chrome_plugins=false \
clang_base_path="/usr" \
is_lld=true \
use_lld=%{is_lld} \
use_vaapi=true \
use_system_freetype=true \
use_system_harfbuzz=true \
@ -487,7 +508,9 @@ python tools/gn/bootstrap/bootstrap.py --gn-gen-args='%{gn_config}'
out/Release/gn gen --args='%{gn_config}' out/Release
pushd out/Release
ninja %{_smp_mflags} chrome chrome_sandbox chromedriver widevinecdmadapter
# widevinecdmadapter
# Build error with widevinecdmadapter in 67.0.3396.62
ninja %{_smp_mflags} chrome chrome_sandbox chromedriver
popd
%install
@ -501,7 +524,6 @@ install -m 4755 out/Release/chrome_sandbox %{buildroot}%{_crdir}/chrome-sandbox
cp -a out/Release/chromedriver %{buildroot}%{_crdir}/chromedriver
install -m 644 out/Release/*.pak %{buildroot}%{_crdir}/
install -m 644 out/Release/icudtl.dat %{buildroot}%{_crdir}/
#cp -a out/Release/*.bin %{buildroot}%{_crdir}/
install -m 644 out/Release/locales/*.pak %{buildroot}%{_crdir}/locales/
install -m 644 out/Release/resources.pak %{buildroot}%{_crdir}/

View file

@ -188,3 +188,111 @@ Type=Application
StartupWMClass=Chromium-browser
MimeType=application/x-extension-htm;application/x-extension-html;application/x-extension-shtml;application/x-extension-xht;application/x-extension-xhtml;application/xhtml+xml;text/html;x-scheme-handler/chrome;x-scheme-handler/ftp;x-scheme-handler/http;x-scheme-handler/https;
Categories=GTK;Network;WebBrowser;X-MandrivaLinux-Internet-WebBrowsers;X-MandrivaLinux-CrossDesktop;
Actions=new-window;new-private-window;
[Desktop Action new-window]
Name=New Window
Name[am]=
Name[ar]=نافذة جديدة
Name[bg]=Нов прозорец
Name[bn]=
Name[ca]=Finestra nova
Name[cs]=Nové okno
Name[da]=Nyt vindue
Name[de]=Neues Fenster
Name[el]=Νέο Παράθυρο
Name[en_GB]=New Window
Name[es]=Nueva ventana
Name[et]=Uus aken
Name[fa]=پنجره جدید
Name[fi]=Uusi ikkuna
Name[fil]=New Window
Name[fr]=Nouvelle fenêtre
Name[gu]= િ
Name[hi]= ि
Name[hr]=Novi prozor
Name[hu]=Új ablak
Name[id]=Jendela Baru
Name[it]=Nuova finestra
Name[iw]=חלון חדש
Name[ja]=
Name[kn]= ಿ
Name[ko]=
Name[lt]=Naujas langas
Name[lv]=Jauns logs
Name[ml]=ി ി
Name[mr]= ि
Name[nl]=Nieuw venster
Name[no]=Nytt vindu
Name[pl]=Nowe okno
Name[pt]=Nova janela
Name[pt_BR]=Nova janela
Name[ro]=Fereastră nouă
Name[ru]=Новое окно
Name[sk]=Nové okno
Name[sl]=Novo okno
Name[sr]=Нови прозор
Name[sv]=Nytt fönster
Name[sw]=Dirisha Jipya
Name[ta]=ி
Name[te]= ి
Name[th]=
Name[tr]=Yeni Pencere
Name[uk]=Нове вікно
Name[vi]=Ca s Mi
Name[zh_CN]=
Name[zh_TW]=
Exec=chromium-browser
[Desktop Action new-private-window]
Name=New Incognito Window
Name[ar]=نافذة جديدة للتصفح المتخفي
Name[bg]=Нов прозорец инкогнито
Name[bn]=
Name[ca]=Finestra d'incògnit nova
Name[cs]=Nové anonymní okno
Name[da]=Nyt inkognitovindue
Name[de]=Neues Inkognito-Fenster
Name[el]=Νέο παράθυρο για ανώνυμη περιήγηση
Name[en_GB]=New Incognito window
Name[es]=Nueva ventana de incógnito
Name[et]=Uus inkognito aken
Name[fa]=پنجره جدید حالت ناشناس
Name[fi]=Uusi incognito-ikkuna
Name[fil]=Bagong Incognito window
Name[fr]=Nouvelle fenêtre de navigation privée
Name[gu]= િ
Name[hi]= ि
Name[hr]=Novi anoniman prozor
Name[hu]=Új Inkognitóablak
Name[id]=Jendela Penyamaran baru
Name[it]=Nuova finestra di navigazione in incognito
Name[iw]=חלון חדש לגלישה בסתר
Name[ja]=
Name[kn]= ಿ
Name[ko]= 릿
Name[lt]=Naujas inkognito langas
Name[lv]=Jauns inkognito režīma logs
Name[ml]=ി ി
Name[mr]= ि
Name[nl]=Nieuw incognitovenster
Name[no]=Nytt inkognitovindu
Name[pl]=Nowe okno incognito
Name[pt]=Nova janela de navegação anónima
Name[pt_BR]=Nova janela anônima
Name[ro]=Fereastră nouă incognito
Name[ru]=Новое окно в режиме инкогнито
Name[sk]=Nové okno inkognito
Name[sl]=Novo okno brez beleženja zgodovine
Name[sr]=Нови прозор за прегледање без архивирања
Name[sv]=Nytt inkognitofönster
Name[ta]=ி ி
Name[te]= ి
Name[th]=
Name[tr]=Yeni Gizli pencere
Name[uk]=Нове вікно в режимі анонімного перегляду
Name[vi]=Ca s n danh mi
Name[zh_CN]=
Name[zh_TW]=
Exec=chromium-browser --incognito

View file

@ -1,21 +0,0 @@
--- a/build/config/compiler/BUILD.gn
+++ b/build/config/compiler/BUILD.gn
@@ -422,18 +422,6 @@
cflags += [ "-fcolor-diagnostics" ]
}
- # TODO(hans): Remove this once Clang generates better optimized debug info by
- # default. https://crbug.com/765793
- if (is_clang && !is_nacl && current_toolchain == host_toolchain &&
- target_os != "chromeos") {
- cflags += [
- "-Xclang",
- "-mllvm",
- "-Xclang",
- "-instcombine-lower-dbg-declare=0",
- ]
- }
-
# Print absolute paths in diagnostics. There is no precedent for doing this
# on Linux/Mac (GCC doesn't support it), but MSVC does this with /FC and
# Windows developers rely on it (crbug.com/636109) so only do this on Windows.

168
chromium-compiler-r2.patch Normal file
View file

@ -0,0 +1,168 @@
From 4310db462fab74bf14066f2a6f7cf250ecba0cf1 Mon Sep 17 00:00:00 2001
From: Mike Gilbert <floppym@gentoo.org>
Date: Wed, 25 Apr 2018 13:22:49 -0400
Subject: [PATCH] Disable various compiler configs
---
build/config/compiler/BUILD.gn | 61 ++++++++++------------------------
1 file changed, 18 insertions(+), 43 deletions(-)
diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
index 83337d52e4b9..f2c192fc31ca 100644
--- a/build/config/compiler/BUILD.gn
+++ b/build/config/compiler/BUILD.gn
@@ -228,8 +228,6 @@ config("compiler") {
configs += [
# See the definitions below.
- ":clang_revision",
- ":compiler_cpu_abi",
":compiler_codegen",
]
@@ -488,18 +486,6 @@ config("compiler") {
}
}
- if (is_clang && !is_nacl && current_toolchain == host_toolchain &&
- target_os != "chromeos") {
- cflags += [
- # TODO(hans): Remove this once Clang generates better optimized debug info
- # by default. https://crbug.com/765793
- "-Xclang",
- "-mllvm",
- "-Xclang",
- "-instcombine-lower-dbg-declare=0",
- ]
- }
-
# Print absolute paths in diagnostics. There is no precedent for doing this
# on Linux/Mac (GCC doesn't support it), but MSVC does this with /FC and
# Windows developers rely on it (crbug.com/636109) so only do this on Windows.
@@ -1415,10 +1401,6 @@ config("default_warnings") {
# TODO(hans): https://crbug.com/766891
"-Wno-null-pointer-arithmetic",
-
- # Ignore warnings about MSVC optimization pragmas.
- # TODO(thakis): Only for no_chromium_code? http://crbug.com/505314
- "-Wno-ignored-pragma-optimize",
]
} else if (use_xcode_clang) {
cflags += [
@@ -1462,22 +1444,6 @@ config("chromium_code") {
"__STDC_FORMAT_MACROS",
]
- if (!is_debug && !using_sanitizer &&
- (!is_linux || !is_clang || is_official_build) &&
- current_cpu != "s390x" && current_cpu != "s390" &&
- current_cpu != "ppc64" && current_cpu != "ppc64" &&
- current_cpu != "mips" && current_cpu != "mips64") {
- # _FORTIFY_SOURCE isn't really supported by Clang now, see
- # http://llvm.org/bugs/show_bug.cgi?id=16821.
- # It seems to work fine with Ubuntu 12 headers though, so use it in
- # official builds.
- #
- # Non-chromium code is not guaranteed to compile cleanly with
- # _FORTIFY_SOURCE. Also, fortified build may fail when optimizations are
- # disabled, so only do that for Release build.
- defines += [ "_FORTIFY_SOURCE=2" ]
- }
-
if (is_mac || is_ios) {
cflags_objc = [ "-Wobjc-missing-property-synthesis" ]
cflags_objcc = [ "-Wobjc-missing-property-synthesis" ]
@@ -1807,7 +1773,8 @@ config("default_stack_frames") {
}
# Default "optimization on" config.
-config("optimize") {
+config("optimize") { }
+config("xoptimize") {
if (is_win) {
# TODO(thakis): Remove is_clang here, https://crbug.com/598772
if (is_official_build && full_wpo_on_official && !is_clang) {
@@ -1841,7 +1808,8 @@ config("optimize") {
}
# Same config as 'optimize' but without the WPO flag.
-config("optimize_no_wpo") {
+config("optimize_no_wpo") { }
+config("xoptimize_no_wpo") {
if (is_win) {
# Favor size over speed, /O1 must be before the common flags. The GYP
# build also specifies /Os and /GF but these are implied by /O1.
@@ -1864,7 +1832,8 @@ config("optimize_no_wpo") {
}
# Turn off optimizations.
-config("no_optimize") {
+config("no_optimize") { }
+config("xno_optimize") {
if (is_win) {
cflags = [
"/Od", # Disable optimization.
@@ -1888,7 +1857,8 @@ config("no_optimize") {
# Turns up the optimization level. On Windows, this implies whole program
# optimization and link-time code generation which is very expensive and should
# be used sparingly.
-config("optimize_max") {
+config("optimize_max") { }
+config("xoptimize_max") {
if (is_nacl && is_nacl_irt) {
# The NaCl IRT is a special case and always wants its own config.
# Various components do:
@@ -1935,7 +1905,8 @@ config("optimize_max") {
#
# TODO(crbug.com/621335) - rework how all of these configs are related
# so that we don't need this disclaimer.
-config("optimize_speed") {
+config("optimize_speed") { }
+config("xoptimize_speed") {
if (is_nacl && is_nacl_irt) {
# The NaCl IRT is a special case and always wants its own config.
# Various components do:
@@ -1973,7 +1944,8 @@ config("optimize_speed") {
}
}
-config("optimize_fuzzing") {
+config("optimize_fuzzing") { }
+config("xoptimize_fuzzing") {
cflags = [ "-O1" ] + common_optimize_on_cflags
ldflags = common_optimize_on_ldflags
visibility = [ ":default_optimization" ]
@@ -2057,7 +2029,8 @@ config("afdo") {
# configs += [ "//build/config/compiler:symbols" ]
# Full symbols.
-config("symbols") {
+config("symbols") { }
+config("xsymbols") {
if (is_win) {
if (use_goma || is_clang) {
# Note that with VC++ this requires is_win_fastlink, enforced elsewhere.
@@ -2155,7 +2128,8 @@ config("symbols") {
# Minimal symbols.
# This config guarantees to hold symbol for stack trace which are shown to user
# when crash happens in unittests running on buildbot.
-config("minimal_symbols") {
+config("minimal_symbols") { }
+config("xminimal_symbols") {
if (is_win) {
# Linker symbols for backtraces only.
cflags = []
@@ -2186,7 +2160,8 @@ config("minimal_symbols") {
}
# No symbols.
-config("no_symbols") {
+config("no_symbols") { }
+config("xno_symbols") {
if (!is_win) {
cflags = [ "-g0" ]
asmflags = cflags
--
2.17.0

View file

@ -36,10 +36,10 @@ Signed-off-by: Daniel Charles <daniel.charles@intel.com>
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -1234,12 +1234,14 @@ const FeatureEntry kFeatureEntries[] = {
@@ -1277,12 +1277,14 @@ const FeatureEntry kFeatureEntries[] = {
{"ui-disable-partial-swap", flag_descriptions::kUiPartialSwapName,
flag_descriptions::kUiPartialSwapDescription, kOsAll,
SINGLE_DISABLE_VALUE_TYPE(switches::kUIDisablePartialSwap)},
#if BUILDFLAG(ENABLE_WEBRTC)
+#if defined(OS_CHROMEOS) || defined(OS_ANDROID)
{"disable-webrtc-hw-decoding", flag_descriptions::kWebrtcHwDecodingName,
flag_descriptions::kWebrtcHwDecodingDescription, kOsAndroid | kOsCrOS,
@ -51,7 +51,7 @@ Signed-off-by: Daniel Charles <daniel.charles@intel.com>
{"enable-webrtc-hw-h264-encoding",
flag_descriptions::kWebrtcHwH264EncodingName,
flag_descriptions::kWebrtcHwH264EncodingDescription, kOsAndroid | kOsCrOS,
@@ -1553,6 +1555,13 @@ const FeatureEntry kFeatureEntries[] = {
@@ -1611,6 +1613,13 @@ const FeatureEntry kFeatureEntries[] = {
flag_descriptions::kShowTouchHudDescription, kOsCrOS,
SINGLE_VALUE_TYPE(ash::switches::kAshTouchHud)},
#endif // OS_CHROMEOS
@ -65,7 +65,7 @@ Signed-off-by: Daniel Charles <daniel.charles@intel.com>
{
"disable-accelerated-video-decode",
flag_descriptions::kAcceleratedVideoDecodeName,
@@ -1560,6 +1569,7 @@ const FeatureEntry kFeatureEntries[] = {
@@ -1618,6 +1627,7 @@ const FeatureEntry kFeatureEntries[] = {
kOsMac | kOsWin | kOsCrOS | kOsAndroid,
SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedVideoDecode),
},
@ -73,7 +73,7 @@ Signed-off-by: Daniel Charles <daniel.charles@intel.com>
#if defined(OS_WIN)
{"enable-hdr", flag_descriptions::kEnableHDRName,
flag_descriptions::kEnableHDRDescription, kOsWin,
@@ -2283,12 +2293,17 @@ const FeatureEntry kFeatureEntries[] = {
@@ -2296,12 +2306,17 @@ const FeatureEntry kFeatureEntries[] = {
FEATURE_VALUE_TYPE(features::kOpenVR)},
#endif // ENABLE_OPENVR
#endif // ENABLE_VR
@ -117,16 +117,18 @@ Signed-off-by: Daniel Charles <daniel.charles@intel.com>
+#endif
::switches::kDisableBlinkFeatures,
::switches::kDisableCastStreamingHWEncoding,
::switches::kDisableDistanceFieldText,
@@ -163,7 +169,7 @@ void DeriveCommandLine(const GURL& start
::switches::kDisableGpu,
@@ -159,8 +165,10 @@ void DeriveCommandLine(const GURL& start
::switches::kDisableWebGLImageChromium,
::switches::kEnableWebGLImageChromium,
::switches::kEnableWebVR,
-#if BUILDFLAG(ENABLE_WEBRTC)
+#if BUILDFLAG(ENABLE_WEBRTC) && (defined(OS_CHROMEOS) || defined(OS_ANDROID))
+#if (defined(OS_CHROMEOS) || defined(OS_ANDROID))
::switches::kDisableWebRtcHWDecoding,
::switches::kDisableWebRtcHWEncoding,
#endif
+#endif
::switches::kOzonePlatform,
ash::switches::kAshEnableTabletMode,
ash::switches::kAshEnableWaylandServer,
--- a/chrome/browser/flag_descriptions.cc
+++ b/chrome/browser/flag_descriptions.cc
@@ -14,6 +14,13 @@ const char kAccelerated2dCanvasDescripti
@ -143,7 +145,7 @@ Signed-off-by: Daniel Charles <daniel.charles@intel.com>
const char kAcceleratedVideoDecodeName[] = "Hardware-accelerated video decode";
const char kAcceleratedVideoDecodeDescription[] =
"Hardware-accelerated video decode where available.";
@@ -1730,6 +1737,7 @@ const char kWebrtcEchoCanceller3Name[] =
@@ -1845,6 +1852,7 @@ const char kWebrtcEchoCanceller3Name[] =
const char kWebrtcEchoCanceller3Description[] =
"Experimental WebRTC echo canceller (AEC3).";
@ -151,7 +153,7 @@ Signed-off-by: Daniel Charles <daniel.charles@intel.com>
const char kWebrtcHwDecodingName[] = "WebRTC hardware video decoding";
const char kWebrtcHwDecodingDescription[] =
"Support in WebRTC for decoding video streams using platform hardware.";
@@ -1737,6 +1745,7 @@ const char kWebrtcHwDecodingDescription[
@@ -1852,6 +1860,7 @@ const char kWebrtcHwDecodingDescription[
const char kWebrtcHwEncodingName[] = "WebRTC hardware video encoding";
const char kWebrtcHwEncodingDescription[] =
"Support in WebRTC for encoding video streams using platform hardware.";
@ -159,7 +161,7 @@ Signed-off-by: Daniel Charles <daniel.charles@intel.com>
const char kWebrtcHwH264EncodingName[] = "WebRTC hardware h264 video encoding";
const char kWebrtcHwH264EncodingDescription[] =
@@ -2561,14 +2570,16 @@ const char kTabStripKeyboardFocusDescrip
@@ -2659,14 +2668,16 @@ const char kTabStripKeyboardFocusDescrip
// Chrome OS -------------------------------------------------------------------
@ -190,7 +192,7 @@ Signed-off-by: Daniel Charles <daniel.charles@intel.com>
extern const char kAcceleratedVideoDecodeName[];
extern const char kAcceleratedVideoDecodeDescription[];
@@ -1569,13 +1573,17 @@ extern const char kPermissionPromptPersi
@@ -1627,13 +1631,17 @@ extern const char kPermissionPromptPersi
#endif // defined(OS_MACOSX)
@ -213,29 +215,30 @@ Signed-off-by: Daniel Charles <daniel.charles@intel.com>
--- a/content/browser/gpu/compositor_util.cc
+++ b/content/browser/gpu/compositor_util.cc
@@ -99,7 +99,11 @@ const GpuFeatureData GetGpuFeatureData(s
@@ -149,7 +149,11 @@ const GpuFeatureData GetGpuFeatureData(
{"video_decode",
manager->GetFeatureStatus(
gpu::GPU_FEATURE_TYPE_ACCELERATED_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},
"Accelerated video decode has been disabled, either via blacklist, "
"about:flags or the command line.",
true, true},
--- a/content/browser/gpu/gpu_process_host.cc
+++ b/content/browser/gpu/gpu_process_host.cc
@@ -132,7 +132,7 @@ static const char* const kSwitchNames[]
@@ -185,7 +185,9 @@ static const char* const kSwitchNames[]
switches::kDisableGLExtensions,
switches::kDisableLogging,
switches::kDisableShaderNameHashing,
-#if BUILDFLAG(ENABLE_WEBRTC)
+#if BUILDFLAG(ENABLE_WEBRTC) && !defined(OS_LINUX)
+#if !defined(OS_LINUX)
switches::kDisableWebRtcHWEncoding,
#endif
+#endif
#if defined(OS_WIN)
switches::kEnableAcceleratedVpxDecode,
#endif
--- a/content/browser/renderer_host/media/video_capture_browsertest.cc
+++ b/content/browser/renderer_host/media/video_capture_browsertest.cc
@@ -163,8 +163,13 @@ class VideoCaptureBrowserTest : public C
@ -254,7 +257,7 @@ Signed-off-by: Daniel Charles <daniel.charles@intel.com>
--- a/content/browser/renderer_host/media/video_capture_gpu_jpeg_decoder.cc
+++ b/content/browser/renderer_host/media/video_capture_gpu_jpeg_decoder.cc
@@ -65,15 +65,21 @@ void VideoCaptureGpuJpegDecoder::Initial
@@ -66,15 +66,21 @@ void VideoCaptureGpuJpegDecoder::Initial
bool is_platform_supported =
base::CommandLine::ForCurrentProcess()->HasSwitch(
switches::kUseFakeJpegDecodeAccelerator);
@ -282,7 +285,7 @@ Signed-off-by: Daniel Charles <daniel.charles@intel.com>
return;
--- a/content/browser/renderer_host/render_process_host_impl.cc
+++ b/content/browser/renderer_host/render_process_host_impl.cc
@@ -2524,7 +2524,11 @@ void RenderProcessHostImpl::PropagateBro
@@ -2691,7 +2691,11 @@ void RenderProcessHostImpl::PropagateBro
switches::kDefaultTileHeight,
switches::kDisable2dCanvasImageChromium,
switches::kDisableAcceleratedJpegDecoding,
@ -291,13 +294,13 @@ Signed-off-by: Daniel Charles <daniel.charles@intel.com>
+#else
switches::kDisableAcceleratedVideoDecode,
+#endif
switches::kDisableBackgroundTasks,
switches::kDisableBackgroundTimerThrottling,
switches::kDisableBreakpad,
switches::kDisableCompositorUkmForTests,
@@ -2658,8 +2662,10 @@ void RenderProcessHostImpl::PropagateBro
@@ -2825,8 +2829,10 @@ void RenderProcessHostImpl::PropagateBro
#if BUILDFLAG(ENABLE_RUNTIME_MEDIA_RENDERER_SELECTION)
switches::kDisableMojoRenderer,
#endif
#if BUILDFLAG(ENABLE_WEBRTC)
+#if !defined(OS_LINUX) || defined(OS_CHROMEOS)
switches::kDisableWebRtcHWDecoding,
switches::kDisableWebRtcHWEncoding,
@ -307,7 +310,7 @@ Signed-off-by: Daniel Charles <daniel.charles@intel.com>
switches::kEnableWebRtcStunOrigin,
--- a/content/browser/webrtc/webrtc_media_recorder_browsertest.cc
+++ b/content/browser/webrtc/webrtc_media_recorder_browsertest.cc
@@ -58,7 +58,12 @@ class WebRtcMediaRecorderTest
@@ -66,7 +66,12 @@ class MAYBE_WebRtcMediaRecorderTest
return;
// This flag is also used for encoding, https://crbug.com/616640.
base::CommandLine::ForCurrentProcess()->AppendSwitch(
@ -323,7 +326,7 @@ Signed-off-by: Daniel Charles <daniel.charles@intel.com>
private:
--- a/content/gpu/BUILD.gn
+++ b/content/gpu/BUILD.gn
@@ -130,4 +130,8 @@ target(link_target_type, "gpu_sources")
@@ -134,4 +134,8 @@ target(link_target_type, "gpu_sources")
(!is_chromecast || is_cast_desktop_build)) {
configs += [ "//build/config/linux/dri" ]
}
@ -354,15 +357,7 @@ Signed-off-by: Daniel Charles <daniel.charles@intel.com>
--- 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"
@@ -55,9 +56,17 @@ const gpu::GpuPreferences GetGpuPreferen
@@ -58,9 +58,17 @@ const gpu::GpuPreferences GetGpuPreferen
gpu_preferences.in_process_gpu =
command_line->HasSwitch(switches::kInProcessGPU);
gpu_preferences.disable_accelerated_video_decode =
@ -405,7 +400,7 @@ Signed-off-by: Daniel Charles <daniel.charles@intel.com>
// Disables hardware acceleration of video decode, where available.
const char kDisableAcceleratedVideoDecode[] =
"disable-accelerated-video-decode";
@@ -859,11 +868,13 @@ const char kZygoteProcess[]
@@ -856,11 +865,13 @@ const char kWaitForDebuggerChildren[]
// ignores this switch on its stable and beta channels.
const char kDisableWebRtcEncryption[] = "disable-webrtc-encryption";
@ -433,7 +428,7 @@ Signed-off-by: Daniel Charles <daniel.charles@intel.com>
CONTENT_EXPORT extern const char kDisableAcceleratedVideoDecode[];
CONTENT_EXPORT extern const char kDisableAcceleratedVideoEncode[];
CONTENT_EXPORT extern const char kDisableAudioSupportForDesktopShare[];
@@ -106,6 +110,9 @@ CONTENT_EXPORT extern const char kDisabl
@@ -105,6 +109,9 @@ CONTENT_EXPORT extern const char kDisabl
CONTENT_EXPORT extern const char kDomAutomationController[];
extern const char kDisable2dCanvasClipAntialiasing[];
CONTENT_EXPORT extern const char kDumpBlinkRuntimeCallStats[];
@ -443,9 +438,9 @@ Signed-off-by: Daniel Charles <daniel.charles@intel.com>
CONTENT_EXPORT extern const char kEnableAggressiveDOMStorageFlushing[];
CONTENT_EXPORT extern const char kEnableAutomation[];
CONTENT_EXPORT extern const char kEnablePreferCompositingToLCDText[];
@@ -240,8 +247,10 @@ CONTENT_EXPORT extern const char kZygote
@@ -237,8 +244,10 @@ CONTENT_EXPORT extern const char kValida
CONTENT_EXPORT extern const char kWaitForDebuggerChildren[];
#if BUILDFLAG(ENABLE_WEBRTC)
CONTENT_EXPORT extern const char kDisableWebRtcEncryption[];
+#if defined(OS_CHROMEOS)
CONTENT_EXPORT extern const char kDisableWebRtcHWDecoding[];
@ -456,7 +451,7 @@ Signed-off-by: Daniel Charles <daniel.charles@intel.com>
CONTENT_EXPORT extern const char kEnableWebRtcStunOrigin[];
--- a/content/renderer/media/webrtc/peer_connection_dependency_factory.cc
+++ b/content/renderer/media/webrtc/peer_connection_dependency_factory.cc
@@ -282,10 +282,18 @@ void PeerConnectionDependencyFactory::In
@@ -276,10 +276,18 @@ void PeerConnectionDependencyFactory::In
const base::CommandLine* cmd_line = base::CommandLine::ForCurrentProcess();
if (gpu_factories && gpu_factories->IsGpuVideoAcceleratorEnabled()) {
@ -477,9 +472,9 @@ Signed-off-by: Daniel Charles <daniel.charles@intel.com>
--- a/content/renderer/render_thread_impl.cc
+++ b/content/renderer/render_thread_impl.cc
@@ -1581,7 +1581,11 @@ media::GpuVideoAcceleratorFactories* Ren
scoped_refptr<base::SingleThreadTaskRunner> media_task_runner =
GetMediaThreadTaskRunner();
@@ -1479,7 +1479,11 @@ media::GpuVideoAcceleratorFactories* Ren
kGpuStreamIdMedia, kGpuStreamPriorityMedia);
const bool enable_video_accelerator =
+#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
+ cmd_line->HasSwitch(switches::kEnableAcceleratedVideo) &&
@ -491,7 +486,7 @@ Signed-off-by: Daniel Charles <daniel.charles@intel.com>
gpu::kGpuFeatureStatusEnabled);
--- a/gpu/config/software_rendering_list.json
+++ b/gpu/config/software_rendering_list.json
@@ -373,17 +373,6 @@
@@ -377,17 +377,6 @@
]
},
{
@ -511,7 +506,7 @@ Signed-off-by: Daniel Charles <daniel.charles@intel.com>
"cr_bugs": [145531, 332596, 571899, 629434],
--- a/media/gpu/BUILD.gn
+++ b/media/gpu/BUILD.gn
@@ -482,6 +482,14 @@ if (use_v4l2_codec || use_vaapi || is_ma
@@ -500,6 +500,14 @@ if (use_v4l2_codec || use_vaapi || is_ma
}
}
@ -526,7 +521,7 @@ Signed-off-by: Daniel Charles <daniel.charles@intel.com>
if (use_vaapi) {
test("jpeg_encode_accelerator_unittest") {
deps = [
@@ -542,6 +550,10 @@ if (use_v4l2_codec || use_vaapi) {
@@ -558,6 +566,10 @@ if (use_v4l2_codec || use_vaapi) {
if (use_ozone) {
deps += [ "//ui/ozone" ]
}

View file

@ -0,0 +1,39 @@
Minimal patch to get chromium to compile with widevine support.
Exactly the same as -r1, but we now need to patch
ninja to pretty please not terminate our build.
caveat emptor: it's in no way clear that building chromium this
way is safer, from a security perspective, than whatever Google
Chrome does.
Upstream appears to be cooking up a code-signing trust-chain
which may protect users against malicious cdm blobs; I doubt
we benefit from these using this kludge. Ideally, someone
would look into this more carefully than I have ... tbh as
soon as I got my "stories" back, I pretty much lost interest :)
-gmt
--
--- a/third_party/widevine/cdm/stub/widevine_cdm_version.h
+++ b/third_party/widevine/cdm/stub/widevine_cdm_version.h
@@ -10,6 +10,7 @@
#include "third_party/widevine/cdm/widevine_cdm_common.h"
+#define WIDEVINE_CDM_VERSION_STRING "unknown"
#define WIDEVINE_CDM_AVAILABLE
#endif // WIDEVINE_CDM_VERSION_H_
--- a/third_party/widevine/cdm/BUILD.gn
+++ b/third_party/widevine/cdm/BUILD.gn
@@ -11,7 +11,7 @@ import("//third_party/widevine/cdm/widev
# Internal Cast builds set enable_widevine=true to bring in Widevine support.
# TODO(xhwang): Support component updated CDM on other platforms and remove this
# assert.
-assert(!enable_widevine || is_win || is_mac || is_chromecast,
+assert(!enable_widevine || is_win || is_mac || is_chromecast || is_linux,
"Component updated CDM only supported on Windows and Mac for now.")
widevine_arch = current_cpu

View file

@ -1,10 +0,0 @@
diff -upr chromium-48.0.2564.82.orig/third_party/widevine/cdm/stub/widevine_cdm_version.h chromium-48.0.2564.82/third_party/widevine/cdm/stub/widevine_cdm_version.h
--- chromium-48.0.2564.82.orig/third_party/widevine/cdm/stub/widevine_cdm_version.h 2016-01-14 01:05:17.000000000 +0200
+++ chromium-48.0.2564.82/third_party/widevine/cdm/stub/widevine_cdm_version.h 2016-01-21 19:18:51.287978456 +0200
@@ -12,4 +12,6 @@
#define WIDEVINE_CDM_AVAILABLE
+#define WIDEVINE_CDM_VERSION_STRING "@WIDEVINE_VERSION@"
+
#endif // WIDEVINE_CDM_VERSION_H_