automatic version update by autodist [release 96.0.4664.45-1mamba;Sun Nov 21 2021]
This commit is contained in:
parent
c3c01255da
commit
71fa5a89a0
@ -1,11 +0,0 @@
|
|||||||
--- chromium-92.0.4515.131/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc.orig 2021-08-16 19:38:33.386147431 +0200
|
|
||||||
+++ chromium-92.0.4515.131/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc 2021-08-16 19:39:12.914789827 +0200
|
|
||||||
@@ -138,7 +138,7 @@
|
|
||||||
// SIGSTKSZ may be too small to prevent the signal handlers from overrunning
|
|
||||||
// the alternative stack. Ensure that the size of the alternative stack is
|
|
||||||
// large enough.
|
|
||||||
- static const unsigned kSigStackSize = std::max(16384, SIGSTKSZ);
|
|
||||||
+ static const unsigned kSigStackSize = std::max((long int)16384, SIGSTKSZ);
|
|
||||||
|
|
||||||
// Only set an alternative stack if there isn't already one, or if the current
|
|
||||||
// one is too small.
|
|
@ -1,11 +0,0 @@
|
|||||||
--- chromium-92.0.4515.131/sandbox/linux/services/credentials.cc.orig 2021-08-16 22:20:24.580175771 +0200
|
|
||||||
+++ chromium-92.0.4515.131/sandbox/linux/services/credentials.cc 2021-08-16 22:20:32.025287245 +0200
|
|
||||||
@@ -98,7 +98,7 @@
|
|
||||||
// attempt this optimization.
|
|
||||||
clone_flags |= CLONE_VM | CLONE_VFORK | CLONE_SETTLS;
|
|
||||||
|
|
||||||
- char tls_buf[PTHREAD_STACK_MIN] = {0};
|
|
||||||
+ char tls_buf[PTHREAD_STACK_MIN];
|
|
||||||
tls = tls_buf;
|
|
||||||
#endif
|
|
||||||
|
|
196
chromium-93.0.4577.63-replace-blacklist-with-ignorelist.patch
Normal file
196
chromium-93.0.4577.63-replace-blacklist-with-ignorelist.patch
Normal file
@ -0,0 +1,196 @@
|
|||||||
|
From 9d080c0934b848ee4a05013c78641e612fcc1e03 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Dylan Cutler <dylancutler@google.com>
|
||||||
|
Date: Wed, 26 May 2021 16:39:52 +0000
|
||||||
|
Subject: [PATCH] Reland "Replace 'blacklist' with 'ignorelist' in
|
||||||
|
./tools/msan/."
|
||||||
|
|
||||||
|
This is a reland of 3b6263f2eece1264b052dfdcbc03b851d5abfb48
|
||||||
|
|
||||||
|
Relanding now that https://chromium-review.googlesource.com/c/chromiumos/overlays/chromiumos-overlay/+/2897974 is merged
|
||||||
|
|
||||||
|
Original change's description:
|
||||||
|
> Replace 'blacklist' with 'ignorelist' in ./tools/msan/.
|
||||||
|
>
|
||||||
|
> Bug: 1097272, 1097268
|
||||||
|
> Change-Id: Id5c8227a5bfb1ffaec82d3168b609085b10c8297
|
||||||
|
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2867730
|
||||||
|
> Commit-Queue: Dylan Cutler <dylancutler@google.com>
|
||||||
|
> Reviewed-by: Nico Weber <thakis@chromium.org>
|
||||||
|
> Reviewed-by: Jonathan Metzman <metzman@chromium.org>
|
||||||
|
> Cr-Commit-Position: refs/heads/master@{#883035}
|
||||||
|
|
||||||
|
Bug: 1097272
|
||||||
|
Bug: 1097268
|
||||||
|
Change-Id: I11a5bc8972680c95fb1dab95ed3b707ed76f4667
|
||||||
|
Cq-Include-Trybots: luci.chromium.try:chromeos-amd64-generic-cfi-thin-lto-rel
|
||||||
|
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2911096
|
||||||
|
Commit-Queue: Dylan Cutler <dylancutler@google.com>
|
||||||
|
Reviewed-by: Nico Weber <thakis@chromium.org>
|
||||||
|
Cr-Commit-Position: refs/heads/master@{#886773}
|
||||||
|
---
|
||||||
|
build/config/sanitizers/BUILD.gn | 44 ++++++++++----------
|
||||||
|
build_overrides/build.gni | 14 +++----
|
||||||
|
tools/msan/{blacklist.txt => ignorelist.txt} | 0
|
||||||
|
3 files changed, 29 insertions(+), 29 deletions(-)
|
||||||
|
rename tools/msan/{blacklist.txt => ignorelist.txt} (100%)
|
||||||
|
|
||||||
|
diff --git a/build/config/sanitizers/BUILD.gn b/build/config/sanitizers/BUILD.gn
|
||||||
|
index aaaad023474d..55b388a43743 100644
|
||||||
|
--- a/build/config/sanitizers/BUILD.gn
|
||||||
|
+++ b/build/config/sanitizers/BUILD.gn
|
||||||
|
@@ -272,11 +272,11 @@ config("asan_flags") {
|
||||||
|
if (is_asan) {
|
||||||
|
cflags += [ "-fsanitize=address" ]
|
||||||
|
if (is_win) {
|
||||||
|
- if (!defined(asan_win_blacklist_path)) {
|
||||||
|
- asan_win_blacklist_path =
|
||||||
|
+ if (!defined(asan_win_blocklist_path)) {
|
||||||
|
+ asan_win_blocklist_path =
|
||||||
|
rebase_path("//tools/memory/asan/blocklist_win.txt", root_build_dir)
|
||||||
|
}
|
||||||
|
- cflags += [ "-fsanitize-blacklist=$asan_win_blacklist_path" ]
|
||||||
|
+ cflags += [ "-fsanitize-ignorelist=$asan_win_blocklist_path" ]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@@ -306,13 +306,13 @@ config("link_shared_library") {
|
||||||
|
config("cfi_flags") {
|
||||||
|
cflags = []
|
||||||
|
if (is_cfi && current_toolchain == default_toolchain) {
|
||||||
|
- if (!defined(cfi_blacklist_path)) {
|
||||||
|
- cfi_blacklist_path =
|
||||||
|
+ if (!defined(cfi_ignorelist_path)) {
|
||||||
|
+ cfi_ignorelist_path =
|
||||||
|
rebase_path("//tools/cfi/ignores.txt", root_build_dir)
|
||||||
|
}
|
||||||
|
cflags += [
|
||||||
|
"-fsanitize=cfi-vcall",
|
||||||
|
- "-fsanitize-blacklist=$cfi_blacklist_path",
|
||||||
|
+ "-fsanitize-ignorelist=$cfi_ignorelist_path",
|
||||||
|
]
|
||||||
|
|
||||||
|
if (use_cfi_cast) {
|
||||||
|
@@ -409,14 +409,14 @@ config("msan_flags") {
|
||||||
|
if (is_msan) {
|
||||||
|
assert(is_linux || is_chromeos,
|
||||||
|
"msan only supported on linux x86_64/ChromeOS")
|
||||||
|
- if (!defined(msan_blacklist_path)) {
|
||||||
|
- msan_blacklist_path =
|
||||||
|
- rebase_path("//tools/msan/blacklist.txt", root_build_dir)
|
||||||
|
+ if (!defined(msan_ignorelist_path)) {
|
||||||
|
+ msan_ignorelist_path =
|
||||||
|
+ rebase_path("//tools/msan/ignorelist.txt", root_build_dir)
|
||||||
|
}
|
||||||
|
cflags = [
|
||||||
|
"-fsanitize=memory",
|
||||||
|
"-fsanitize-memory-track-origins=$msan_track_origins",
|
||||||
|
- "-fsanitize-blacklist=$msan_blacklist_path",
|
||||||
|
+ "-fsanitize-ignorelist=$msan_ignorelist_path",
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@@ -424,13 +424,13 @@ config("msan_flags") {
|
||||||
|
config("tsan_flags") {
|
||||||
|
if (is_tsan) {
|
||||||
|
assert(is_linux || is_chromeos, "tsan only supported on linux x86_64")
|
||||||
|
- if (!defined(tsan_blacklist_path)) {
|
||||||
|
- tsan_blacklist_path =
|
||||||
|
+ if (!defined(tsan_ignorelist_path)) {
|
||||||
|
+ tsan_ignorelist_path =
|
||||||
|
rebase_path("//tools/memory/tsan_v2/ignores.txt", root_build_dir)
|
||||||
|
}
|
||||||
|
cflags = [
|
||||||
|
"-fsanitize=thread",
|
||||||
|
- "-fsanitize-blacklist=$tsan_blacklist_path",
|
||||||
|
+ "-fsanitize-ignorelist=$tsan_ignorelist_path",
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@@ -438,8 +438,8 @@ config("tsan_flags") {
|
||||||
|
config("ubsan_flags") {
|
||||||
|
cflags = []
|
||||||
|
if (is_ubsan) {
|
||||||
|
- if (!defined(ubsan_blacklist_path)) {
|
||||||
|
- ubsan_blacklist_path =
|
||||||
|
+ if (!defined(ubsan_ignorelist_path)) {
|
||||||
|
+ ubsan_ignorelist_path =
|
||||||
|
rebase_path("//tools/ubsan/ignorelist.txt", root_build_dir)
|
||||||
|
}
|
||||||
|
cflags += [
|
||||||
|
@@ -456,7 +456,7 @@ config("ubsan_flags") {
|
||||||
|
"-fsanitize=signed-integer-overflow",
|
||||||
|
"-fsanitize=unreachable",
|
||||||
|
"-fsanitize=vla-bound",
|
||||||
|
- "-fsanitize-blacklist=$ubsan_blacklist_path",
|
||||||
|
+ "-fsanitize-ignorelist=$ubsan_ignorelist_path",
|
||||||
|
]
|
||||||
|
|
||||||
|
# Chromecast ubsan builds fail to compile with these
|
||||||
|
@@ -486,8 +486,8 @@ config("ubsan_no_recover") {
|
||||||
|
|
||||||
|
config("ubsan_security_flags") {
|
||||||
|
if (is_ubsan_security) {
|
||||||
|
- if (!defined(ubsan_security_blacklist_path)) {
|
||||||
|
- ubsan_security_blacklist_path =
|
||||||
|
+ if (!defined(ubsan_security_ignorelist_path)) {
|
||||||
|
+ ubsan_security_ignorelist_path =
|
||||||
|
rebase_path("//tools/ubsan/security_ignorelist.txt", root_build_dir)
|
||||||
|
}
|
||||||
|
cflags = [
|
||||||
|
@@ -495,7 +495,7 @@ config("ubsan_security_flags") {
|
||||||
|
"-fsanitize=shift",
|
||||||
|
"-fsanitize=signed-integer-overflow",
|
||||||
|
"-fsanitize=vla-bound",
|
||||||
|
- "-fsanitize-blacklist=$ubsan_security_blacklist_path",
|
||||||
|
+ "-fsanitize-ignorelist=$ubsan_security_ignorelist_path",
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@@ -508,13 +508,13 @@ config("ubsan_null_flags") {
|
||||||
|
|
||||||
|
config("ubsan_vptr_flags") {
|
||||||
|
if (is_ubsan_vptr) {
|
||||||
|
- if (!defined(ubsan_vptr_blacklist_path)) {
|
||||||
|
- ubsan_vptr_blacklist_path =
|
||||||
|
+ if (!defined(ubsan_vptr_ignorelist_path)) {
|
||||||
|
+ ubsan_vptr_ignorelist_path =
|
||||||
|
rebase_path("//tools/ubsan/vptr_ignorelist.txt", root_build_dir)
|
||||||
|
}
|
||||||
|
cflags = [
|
||||||
|
"-fsanitize=vptr",
|
||||||
|
- "-fsanitize-blacklist=$ubsan_vptr_blacklist_path",
|
||||||
|
+ "-fsanitize-ignorelist=$ubsan_vptr_ignorelist_path",
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
diff --git a/build_overrides/build.gni b/build_overrides/build.gni
|
||||||
|
index 82627b03653f..f3e563ab701b 100644
|
||||||
|
--- a/build_overrides/build.gni
|
||||||
|
+++ b/build_overrides/build.gni
|
||||||
|
@@ -42,15 +42,15 @@ declare_args() {
|
||||||
|
# Allows different projects to specify their own suppression/ignore lists for
|
||||||
|
# sanitizer tools.
|
||||||
|
# asan_suppressions_file = "path/to/asan_suppressions.cc"
|
||||||
|
-# asan_win_blacklist_path = "path/to/asan/blocklist_win.txt"
|
||||||
|
+# asan_win_ignorelist_path = "path/to/asan/blocklist_win.txt"
|
||||||
|
# lsan_suppressions_file = "path/to/lsan_suppressions.cc"
|
||||||
|
# tsan_suppressions_file = "path/to/tsan_suppressions.cc"
|
||||||
|
-# tsan_blacklist_path = "path/to/tsan/ignores.txt"
|
||||||
|
-# msan_blacklist_path = "path/to/msan/blacklist.txt"
|
||||||
|
-# ubsan_blacklist_path = "path/to/ubsan/blacklist.txt"
|
||||||
|
-# ubsan_vptr_blacklist_path = "path/to/ubsan/vptr_blacklist.txt"
|
||||||
|
-# ubsan_security_blacklist_path = "path/to/ubsan/security_blacklist.txt"
|
||||||
|
-# cfi_blacklist_path = "path/to/cfi/ignores.txt"
|
||||||
|
+# tsan_ignorelist_path = "path/to/tsan/ignores.txt"
|
||||||
|
+# msan_ignorelist_path = "path/to/msan/ignorelist.txt"
|
||||||
|
+# ubsan_ignorelist_path = "path/to/ubsan/ignorelist.txt"
|
||||||
|
+# ubsan_vptr_ignorelist_path = "path/to/ubsan/vptr_ignorelist.txt"
|
||||||
|
+# ubsan_security_ignorelist_path = "path/to/ubsan/security_ignorelist.txt"
|
||||||
|
+# cfi_ignorelist_path = "path/to/cfi/ignores.txt"
|
||||||
|
|
||||||
|
declare_args() {
|
||||||
|
# Android 32-bit non-component, non-clang builds cannot have symbol_level=2
|
||||||
|
diff --git a/tools/msan/blacklist.txt b/tools/msan/ignorelist.txt
|
||||||
|
similarity index 100%
|
||||||
|
rename from tools/msan/blacklist.txt
|
||||||
|
rename to tools/msan/ignorelist.txt
|
@ -0,0 +1,28 @@
|
|||||||
|
From 7a23987acb698c2934958cb42a5e7b1cd73fe142 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Nico Weber <thakis@chromium.org>
|
||||||
|
Date: Tue, 20 Jul 2021 21:54:09 +0000
|
||||||
|
Subject: [PATCH] build: Add a TODO about a missing pnacl flag
|
||||||
|
|
||||||
|
Change-Id: I1700d185a23afe4120e14c755782450b1bf89289
|
||||||
|
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3041785
|
||||||
|
Commit-Queue: Nico Weber <thakis@chromium.org>
|
||||||
|
Commit-Queue: Hans Wennborg <hans@chromium.org>
|
||||||
|
Auto-Submit: Nico Weber <thakis@chromium.org>
|
||||||
|
Reviewed-by: Hans Wennborg <hans@chromium.org>
|
||||||
|
Cr-Commit-Position: refs/heads/master@{#903659}
|
||||||
|
---
|
||||||
|
build/config/compiler/BUILD.gn | 1 +
|
||||||
|
1 file changed, 1 insertion(+)
|
||||||
|
|
||||||
|
diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
|
||||||
|
index b6e095b705..ef6d1dfc12 100644
|
||||||
|
--- a/build/config/compiler/BUILD.gn
|
||||||
|
+++ b/build/config/compiler/BUILD.gn
|
||||||
|
@@ -1217,6 +1217,7 @@ config("compiler_deterministic") {
|
||||||
|
# we build same files with same compile flag.
|
||||||
|
# Other paths are already given in relative, no need to normalize them.
|
||||||
|
if (is_nacl) {
|
||||||
|
+ # TODO(https://crbug.com/1231236): Use -ffile-compilation-dir= here.
|
||||||
|
cflags += [
|
||||||
|
"-Xclang",
|
||||||
|
"-fdebug-compilation-dir",
|
36
chromium-94.0.4606.71-ffmpeg-4.4.patch
Normal file
36
chromium-94.0.4606.71-ffmpeg-4.4.patch
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
diff --git a/media/filters/ffmpeg_demuxer.cc b/media/filters/ffmpeg_demuxer.cc
|
||||||
|
index ac4713b07268..492a9a37d096 100644
|
||||||
|
--- a/media/filters/ffmpeg_demuxer.cc
|
||||||
|
+++ b/media/filters/ffmpeg_demuxer.cc
|
||||||
|
@@ -427,11 +427,11 @@ void FFmpegDemuxerStream::EnqueuePacket(ScopedAVPacket packet) {
|
||||||
|
scoped_refptr<DecoderBuffer> buffer;
|
||||||
|
|
||||||
|
if (type() == DemuxerStream::TEXT) {
|
||||||
|
- size_t id_size = 0;
|
||||||
|
+ int id_size = 0;
|
||||||
|
uint8_t* id_data = av_packet_get_side_data(
|
||||||
|
packet.get(), AV_PKT_DATA_WEBVTT_IDENTIFIER, &id_size);
|
||||||
|
|
||||||
|
- size_t settings_size = 0;
|
||||||
|
+ int settings_size = 0;
|
||||||
|
uint8_t* settings_data = av_packet_get_side_data(
|
||||||
|
packet.get(), AV_PKT_DATA_WEBVTT_SETTINGS, &settings_size);
|
||||||
|
|
||||||
|
@@ -443,7 +443,7 @@ void FFmpegDemuxerStream::EnqueuePacket(ScopedAVPacket packet) {
|
||||||
|
buffer = DecoderBuffer::CopyFrom(packet->data, packet->size,
|
||||||
|
side_data.data(), side_data.size());
|
||||||
|
} else {
|
||||||
|
- size_t side_data_size = 0;
|
||||||
|
+ int side_data_size = 0;
|
||||||
|
uint8_t* side_data = av_packet_get_side_data(
|
||||||
|
packet.get(), AV_PKT_DATA_MATROSKA_BLOCKADDITIONAL, &side_data_size);
|
||||||
|
|
||||||
|
@@ -504,7 +504,7 @@ void FFmpegDemuxerStream::EnqueuePacket(ScopedAVPacket packet) {
|
||||||
|
packet->size - data_offset);
|
||||||
|
}
|
||||||
|
|
||||||
|
- size_t skip_samples_size = 0;
|
||||||
|
+ int skip_samples_size = 0;
|
||||||
|
const uint32_t* skip_samples_ptr =
|
||||||
|
reinterpret_cast<const uint32_t*>(av_packet_get_side_data(
|
||||||
|
packet.get(), AV_PKT_DATA_SKIP_SAMPLES, &skip_samples_size));
|
49
chromium-94.0.4606.71-ffmpeg-roll.patch
Normal file
49
chromium-94.0.4606.71-ffmpeg-roll.patch
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
From b94755e4633045be96ab5e0bdde0db7e16a804bd Mon Sep 17 00:00:00 2001
|
||||||
|
From: "liberato@chromium.org" <liberato@chromium.org>
|
||||||
|
Date: Fri, 6 Aug 2021 04:25:31 +0000
|
||||||
|
Subject: [PATCH] FFmpeg M94 roll.
|
||||||
|
|
||||||
|
Contains DEPS update + chromium-side fixes.
|
||||||
|
|
||||||
|
Bug: 1227259
|
||||||
|
Change-Id: I61c5eaa789ea12c17d0cbcbf837435b9cf32479b
|
||||||
|
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3011889
|
||||||
|
Reviewed-by: Thomas Guilbert <tguilbert@chromium.org>
|
||||||
|
Commit-Queue: Frank Liberato <liberato@chromium.org>
|
||||||
|
Cr-Commit-Position: refs/heads/master@{#909174}
|
||||||
|
---
|
||||||
|
media/ffmpeg/ffmpeg_common.h | 1 +
|
||||||
|
media/filters/ffmpeg_demuxer.cc | 4 ++--
|
||||||
|
2 files changed, 3 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/media/ffmpeg/ffmpeg_common.h b/media/ffmpeg/ffmpeg_common.h
|
||||||
|
index cede8ac5a7..97d6307e28 100644
|
||||||
|
--- a/media/ffmpeg/ffmpeg_common.h
|
||||||
|
+++ b/media/ffmpeg/ffmpeg_common.h
|
||||||
|
@@ -29,6 +29,7 @@ extern "C" {
|
||||||
|
#include <libavformat/avformat.h>
|
||||||
|
#include <libavformat/avio.h>
|
||||||
|
#include <libavutil/avutil.h>
|
||||||
|
+#include <libavutil/channel_layout.h>
|
||||||
|
#include <libavutil/imgutils.h>
|
||||||
|
#include <libavutil/log.h>
|
||||||
|
#include <libavutil/mastering_display_metadata.h>
|
||||||
|
diff --git a/media/filters/ffmpeg_demuxer.cc b/media/filters/ffmpeg_demuxer.cc
|
||||||
|
index ac4713b072..605001d935 100644
|
||||||
|
--- a/media/filters/ffmpeg_demuxer.cc
|
||||||
|
+++ b/media/filters/ffmpeg_demuxer.cc
|
||||||
|
@@ -106,12 +106,12 @@ static base::TimeDelta ExtractStartTime(AVStream* stream) {
|
||||||
|
|
||||||
|
// Next try to use the first DTS value, for codecs where we know PTS == DTS
|
||||||
|
// (excludes all H26x codecs). The start time must be returned in PTS.
|
||||||
|
- if (stream->first_dts != kNoFFmpegTimestamp &&
|
||||||
|
+ if (av_stream_get_first_dts(stream) != kNoFFmpegTimestamp &&
|
||||||
|
stream->codecpar->codec_id != AV_CODEC_ID_HEVC &&
|
||||||
|
stream->codecpar->codec_id != AV_CODEC_ID_H264 &&
|
||||||
|
stream->codecpar->codec_id != AV_CODEC_ID_MPEG4) {
|
||||||
|
const base::TimeDelta first_pts =
|
||||||
|
- ConvertFromTimeBase(stream->time_base, stream->first_dts);
|
||||||
|
+ ConvertFromTimeBase(stream->time_base, av_stream_get_first_dts(stream));
|
||||||
|
if (first_pts < start_time)
|
||||||
|
start_time = first_pts;
|
||||||
|
}
|
@ -0,0 +1,11 @@
|
|||||||
|
--- chrome/browser/flag-metadata.json.orig 2021-09-21 18:34:38.740426608 +0000
|
||||||
|
+++ chrome/browser/flag-metadata.json 2021-09-21 18:35:09.392000797 +0000
|
||||||
|
@@ -1285,7 +1285,7 @@
|
||||||
|
{
|
||||||
|
"name": "enable-accelerated-video-decode",
|
||||||
|
"owners": [ "media-dev@chromium.org" ],
|
||||||
|
- "expiry_milestone": 93
|
||||||
|
+ "expiry_milestone": 99
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "enable-accessibility-live-caption",
|
47
chromium-94.0.4606.71-use-ffile-compilation-dir.patch
Normal file
47
chromium-94.0.4606.71-use-ffile-compilation-dir.patch
Normal file
@ -0,0 +1,47 @@
|
|||||||
|
From 34a955823630096f5b01c2b01d51c1ea59d22763 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Zequan Wu <zequanwu@google.com>
|
||||||
|
Date: Tue, 20 Jul 2021 14:13:50 +0000
|
||||||
|
Subject: [PATCH] Use -ffile-compilation-dir= instead of
|
||||||
|
-fdebug-compilation-dir=
|
||||||
|
|
||||||
|
Bug: 1010267
|
||||||
|
Change-Id: If2b4ead8535a76490eb466a38e3d8fed6ea91079
|
||||||
|
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2770738
|
||||||
|
Auto-Submit: Zequan Wu <zequanwu@google.com>
|
||||||
|
Commit-Queue: Nico Weber <thakis@chromium.org>
|
||||||
|
Reviewed-by: Nico Weber <thakis@chromium.org>
|
||||||
|
Cr-Commit-Position: refs/heads/master@{#903456}
|
||||||
|
---
|
||||||
|
build/config/compiler/BUILD.gn | 18 ++++++++++++------
|
||||||
|
build/config/compiler/compiler.gni | 7 ++-----
|
||||||
|
2 files changed, 14 insertions(+), 11 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
|
||||||
|
index ede07d111c..6db16c1cdd 100644
|
||||||
|
--- a/build/config/compiler/BUILD.gn
|
||||||
|
+++ b/build/config/compiler/BUILD.gn
|
||||||
|
@@ -1216,12 +1216,18 @@ config("compiler_deterministic") {
|
||||||
|
# different build directory like "out/feature_a" and "out/feature_b" if
|
||||||
|
# we build same files with same compile flag.
|
||||||
|
# Other paths are already given in relative, no need to normalize them.
|
||||||
|
- cflags += [
|
||||||
|
- "-Xclang",
|
||||||
|
- "-fdebug-compilation-dir",
|
||||||
|
- "-Xclang",
|
||||||
|
- ".",
|
||||||
|
- ]
|
||||||
|
+ if (is_nacl) {
|
||||||
|
+ cflags += [
|
||||||
|
+ "-Xclang",
|
||||||
|
+ "-fdebug-compilation-dir",
|
||||||
|
+ "-Xclang",
|
||||||
|
+ ".",
|
||||||
|
+ ]
|
||||||
|
+ } else {
|
||||||
|
+ # -ffile-compilation-dir is an alias for both -fdebug-compilation-dir=
|
||||||
|
+ # and -fcoverage-compilation-dir=.
|
||||||
|
+ cflags += [ "-ffile-compilation-dir=." ]
|
||||||
|
+ }
|
||||||
|
if (!is_win) {
|
||||||
|
# We don't use clang -cc1as on Windows (yet? https://crbug.com/762167)
|
||||||
|
asmflags = [ "-Wa,-fdebug-compilation-dir,." ]
|
31
chromium-95.0.4638.54-harfbuzz-3.patch
Normal file
31
chromium-95.0.4638.54-harfbuzz-3.patch
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
From 9e00e702633c47c590a869bc66b5c2ceec09da50 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Dominik Röttsches <drott@chromium.org>
|
||||||
|
Date: Tue, 28 Sep 2021 15:31:50 +0000
|
||||||
|
Subject: [PATCH] Roll src/third_party/harfbuzz-ng/src/ 6602cbb70..a52c6df38 (80 commits)
|
||||||
|
|
||||||
|
Fixed: 1252284
|
||||||
|
Change-Id: Ie2ff99da5e41ca97b8881e1bd3e158881f4d5a8e
|
||||||
|
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3190252
|
||||||
|
Commit-Queue: Dominik Röttsches <drott@chromium.org>
|
||||||
|
Commit-Queue: Calder Kitagawa <ckitagawa@chromium.org>
|
||||||
|
Auto-Submit: Dominik Röttsches <drott@chromium.org>
|
||||||
|
Reviewed-by: Calder Kitagawa <ckitagawa@chromium.org>
|
||||||
|
Reviewed-by: Anders Hartvoll Ruud <andruud@chromium.org>
|
||||||
|
Cr-Commit-Position: refs/heads/main@{#925776}
|
||||||
|
|
||||||
|
(only components/paint_preview/common/subset_font.cc)
|
||||||
|
---
|
||||||
|
|
||||||
|
diff --git a/components/paint_preview/common/subset_font.cc b/components/paint_preview/common/subset_font.cc
|
||||||
|
index 45daea7b1..43a448e 100644
|
||||||
|
--- a/components/paint_preview/common/subset_font.cc
|
||||||
|
+++ b/components/paint_preview/common/subset_font.cc
|
||||||
|
@@ -79,7 +79,7 @@
|
||||||
|
// Retain all variation information for OpenType variation fonts. See:
|
||||||
|
// https://docs.microsoft.com/en-us/typography/opentype/spec/otvaroverview
|
||||||
|
hb_set_t* skip_subset =
|
||||||
|
- hb_subset_input_no_subset_tables_set(input.get()); // Owned by |input|.
|
||||||
|
+ hb_subset_input_set(input.get(), HB_SUBSET_SETS_NO_SUBSET_TABLE_TAG);
|
||||||
|
hb_set_add(skip_subset, HB_TAG('a', 'v', 'a', 'r'));
|
||||||
|
hb_set_add(skip_subset, HB_TAG('c', 'v', 'a', 'r'));
|
||||||
|
hb_set_add(skip_subset, HB_TAG('f', 'v', 'a', 'r'));
|
@ -0,0 +1,31 @@
|
|||||||
|
From 0aa878b7839141077071db97ba1cd30edf486827 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Stephan Hartmann <stha09@googlemail.com>
|
||||||
|
Date: Wed, 15 Sep 2021 17:14:14 +0000
|
||||||
|
Subject: [PATCH] maldoca: depend on zlib instead of headers only
|
||||||
|
|
||||||
|
There is no zlib_common_headers target for unbundled zlib
|
||||||
|
and in the end code links against zlib static library anyways.
|
||||||
|
|
||||||
|
Bug: None
|
||||||
|
Change-Id: I50b8bb5b480770b637904de00aecc3a629f09471
|
||||||
|
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3162976
|
||||||
|
Reviewed-by: Daniel Rubery <drubery@chromium.org>
|
||||||
|
Commit-Queue: Stephan Hartmann <stha09@googlemail.com>
|
||||||
|
Cr-Commit-Position: refs/heads/main@{#921717}
|
||||||
|
---
|
||||||
|
third_party/maldoca/BUILD.gn | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/third_party/maldoca/BUILD.gn b/third_party/maldoca/BUILD.gn
|
||||||
|
index eeab2056b5..29a0a2ca49 100644
|
||||||
|
--- a/third_party/maldoca/BUILD.gn
|
||||||
|
+++ b/third_party/maldoca/BUILD.gn
|
||||||
|
@@ -224,7 +224,7 @@ source_set("maldoca-ole") {
|
||||||
|
"//third_party/libxml",
|
||||||
|
"//third_party/protobuf:protobuf_lite",
|
||||||
|
"//third_party/re2",
|
||||||
|
- "//third_party/zlib:zlib_common_headers",
|
||||||
|
+ "//third_party/zlib:zlib",
|
||||||
|
"//third_party/zlib/google:zip",
|
||||||
|
]
|
||||||
|
|
671
chromium-95.0.4638.54-ozone-x11-fix-VA-API.patch
Normal file
671
chromium-95.0.4638.54-ozone-x11-fix-VA-API.patch
Normal file
@ -0,0 +1,671 @@
|
|||||||
|
From a4de986102a45e29c3ef596f22704bdca244c26c Mon Sep 17 00:00:00 2001
|
||||||
|
From: Maksim Sisov <msisov@igalia.com>
|
||||||
|
Date: Fri, 17 Sep 2021 08:45:55 +0000
|
||||||
|
Subject: [PATCH] ozone/x11: fix VA-API.
|
||||||
|
|
||||||
|
This patch fixes VA-API usage with Ozone/X11 backend (which
|
||||||
|
is our default backend now as X11 has been deprecated -
|
||||||
|
crrev.com/c/3114071)).
|
||||||
|
|
||||||
|
non-Ozone X11 is disabled now and Ozone is always used
|
||||||
|
on Linux. However, VA-API implementation is not Ozone friendly
|
||||||
|
yet and requires major refactoring. But given that VA-API
|
||||||
|
implementation on Linux worked only with X11, it's fine for
|
||||||
|
now to change USE_X11 and !IsUsingOzonePlatform to
|
||||||
|
BUILDFLAG(OZONE_PLATFORM_X11) and fail VA-API initialization
|
||||||
|
in VADisplayState::Initialize for Ozone/Linux other than
|
||||||
|
non-X11 backends.
|
||||||
|
|
||||||
|
Bug: 1121948
|
||||||
|
Change-Id: If85d289235e6d358103d9fa2bbe0f741fb599a26
|
||||||
|
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3141878
|
||||||
|
Commit-Queue: Maksim Sisov <msisov@igalia.com>
|
||||||
|
Reviewed-by: Andres Calderon Jaramillo <andrescj@chromium.org>
|
||||||
|
Reviewed-by: Robert Kroeger <rjkroege@chromium.org>
|
||||||
|
Reviewed-by: Xiaohan Wang <xhwang@chromium.org>
|
||||||
|
Reviewed-by: Alexander Dunaev <adunaev@igalia.com>
|
||||||
|
Cr-Commit-Position: refs/heads/main@{#922466}
|
||||||
|
---
|
||||||
|
media/BUILD.gn | 3 -
|
||||||
|
media/gpu/BUILD.gn | 5 +-
|
||||||
|
media/gpu/args.gni | 13 +++-
|
||||||
|
media/gpu/vaapi/BUILD.gn | 8 +-
|
||||||
|
media/gpu/vaapi/va_stub_header.fragment | 6 +-
|
||||||
|
media/gpu/vaapi/vaapi_picture_factory.cc | 72 ++++++++----------
|
||||||
|
.../vaapi_picture_native_pixmap_angle.cc | 2 -
|
||||||
|
media/gpu/vaapi/vaapi_picture_tfp.cc | 2 -
|
||||||
|
.../vaapi/vaapi_video_decode_accelerator.cc | 9 +--
|
||||||
|
...vaapi_video_decode_accelerator_unittest.cc | 11 +--
|
||||||
|
media/gpu/vaapi/vaapi_wrapper.cc | 76 +++++++++----------
|
||||||
|
media/gpu/vaapi/vaapi_wrapper.h | 8 +-
|
||||||
|
ui/ozone/platform/x11/ozone_platform_x11.cc | 3 +
|
||||||
|
ui/ozone/public/ozone_platform.h | 10 +++
|
||||||
|
14 files changed, 108 insertions(+), 120 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/media/BUILD.gn b/media/BUILD.gn
|
||||||
|
index dbee1d4338..d5c158c08f 100644
|
||||||
|
--- a/media/BUILD.gn
|
||||||
|
+++ b/media/BUILD.gn
|
||||||
|
@@ -130,9 +130,6 @@ component("media") {
|
||||||
|
public_deps += [ "//media/base/mac" ]
|
||||||
|
}
|
||||||
|
|
||||||
|
- if (use_x11) {
|
||||||
|
- deps += [ "//ui/base/x" ]
|
||||||
|
- }
|
||||||
|
if (use_ozone) {
|
||||||
|
deps += [ "//ui/ozone" ]
|
||||||
|
}
|
||||||
|
diff --git a/media/gpu/BUILD.gn b/media/gpu/BUILD.gn
|
||||||
|
index c7499485ac..3fedc78948 100644
|
||||||
|
--- a/media/gpu/BUILD.gn
|
||||||
|
+++ b/media/gpu/BUILD.gn
|
||||||
|
@@ -20,6 +20,7 @@ buildflag_header("buildflags") {
|
||||||
|
"USE_VAAPI_IMAGE_CODECS=$use_vaapi_image_codecs",
|
||||||
|
"USE_V4L2_CODEC=$use_v4l2_codec",
|
||||||
|
"USE_LIBV4L2=$use_v4lplugin",
|
||||||
|
+ "USE_VAAPI_X11=$use_vaapi_x11",
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -215,9 +216,7 @@ component("gpu") {
|
||||||
|
"windows/supported_profile_helpers.cc",
|
||||||
|
"windows/supported_profile_helpers.h",
|
||||||
|
]
|
||||||
|
- configs += [
|
||||||
|
- "//third_party/khronos:khronos_headers",
|
||||||
|
- ]
|
||||||
|
+ configs += [ "//third_party/khronos:khronos_headers" ]
|
||||||
|
public_deps += [ "//media/base/win:media_foundation_util" ]
|
||||||
|
deps += [
|
||||||
|
"//gpu/ipc/common:common",
|
||||||
|
diff --git a/media/gpu/args.gni b/media/gpu/args.gni
|
||||||
|
index 4004937949..2f53843918 100644
|
||||||
|
--- a/media/gpu/args.gni
|
||||||
|
+++ b/media/gpu/args.gni
|
||||||
|
@@ -3,7 +3,15 @@
|
||||||
|
# found in the LICENSE file.
|
||||||
|
|
||||||
|
import("//build/config/chromeos/ui_mode.gni")
|
||||||
|
-import("//build/config/ui.gni")
|
||||||
|
+import("//build/config/ozone.gni")
|
||||||
|
+
|
||||||
|
+declare_args() {
|
||||||
|
+ # Indicates if X11 VA-API-based hardware acceleration is to be used.
|
||||||
|
+ # See also the comment near the |use_vaapi| arg.
|
||||||
|
+ use_vaapi_x11 =
|
||||||
|
+ is_linux && ozone_platform_x11 && !is_chromecast && !is_chromeos_lacros &&
|
||||||
|
+ (target_cpu == "x86" || target_cpu == "x64")
|
||||||
|
+}
|
||||||
|
|
||||||
|
declare_args() {
|
||||||
|
# Indicates if V4L plugin is used.
|
||||||
|
@@ -21,8 +29,7 @@ declare_args() {
|
||||||
|
# is typically the case on x86-based ChromeOS devices.
|
||||||
|
# VA-API should also be compiled by default on x11-using linux devices
|
||||||
|
# using x86/x64.
|
||||||
|
- use_vaapi =
|
||||||
|
- is_linux && use_x11 && (target_cpu == "x86" || target_cpu == "x64")
|
||||||
|
+ use_vaapi = use_vaapi_x11
|
||||||
|
|
||||||
|
# Indicates if ChromeOS protected media support exists. This is used
|
||||||
|
# to enable the CDM daemon in Chrome OS as well as support for
|
||||||
|
diff --git a/media/gpu/vaapi/BUILD.gn b/media/gpu/vaapi/BUILD.gn
|
||||||
|
index b11d2c60fa..0c2520dd6b 100644
|
||||||
|
--- a/media/gpu/vaapi/BUILD.gn
|
||||||
|
+++ b/media/gpu/vaapi/BUILD.gn
|
||||||
|
@@ -17,7 +17,7 @@ assert(use_vaapi)
|
||||||
|
generate_stubs("libva_stubs") {
|
||||||
|
extra_header = "va_stub_header.fragment"
|
||||||
|
sigs = [ "va.sigs" ]
|
||||||
|
- if (use_x11) {
|
||||||
|
+ if (use_vaapi_x11) {
|
||||||
|
sigs += [ "va_x11.sigs" ]
|
||||||
|
}
|
||||||
|
if (is_chromeos_ash) {
|
||||||
|
@@ -131,14 +131,14 @@ source_set("vaapi") {
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
||||||
|
- if (use_x11 || use_ozone || use_egl) {
|
||||||
|
+ if (use_ozone || use_egl) {
|
||||||
|
sources += [
|
||||||
|
"vaapi_picture_native_pixmap.cc",
|
||||||
|
"vaapi_picture_native_pixmap.h",
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
||||||
|
- if (use_x11) {
|
||||||
|
+ if (use_vaapi_x11) {
|
||||||
|
deps += [ "//ui/gfx/x" ]
|
||||||
|
sources += [
|
||||||
|
"vaapi_picture_native_pixmap_angle.cc",
|
||||||
|
@@ -197,7 +197,7 @@ source_set("common") {
|
||||||
|
deps += [ "//ui/ozone" ]
|
||||||
|
}
|
||||||
|
|
||||||
|
- if (use_x11) {
|
||||||
|
+ if (use_vaapi_x11) {
|
||||||
|
deps += [ "//ui/gfx/x" ]
|
||||||
|
}
|
||||||
|
|
||||||
|
diff --git a/media/gpu/vaapi/va_stub_header.fragment b/media/gpu/vaapi/va_stub_header.fragment
|
||||||
|
index bed198484d..e8c46c5e81 100644
|
||||||
|
--- a/media/gpu/vaapi/va_stub_header.fragment
|
||||||
|
+++ b/media/gpu/vaapi/va_stub_header.fragment
|
||||||
|
@@ -1,12 +1,14 @@
|
||||||
|
// The extra include header needed in the generated stub file for defining
|
||||||
|
// various libva types.
|
||||||
|
|
||||||
|
+#include "media/gpu/buildflags.h"
|
||||||
|
+
|
||||||
|
extern "C" {
|
||||||
|
|
||||||
|
#include <va/va_drm.h>
|
||||||
|
#include <va/va.h>
|
||||||
|
-#if defined(USE_X11)
|
||||||
|
+#if BUILDFLAG(USE_VAAPI_X11)
|
||||||
|
#include <va/va_x11.h>
|
||||||
|
-#endif
|
||||||
|
+#endif // BUILDFLAG(USE_VAAPI_X11)
|
||||||
|
|
||||||
|
}
|
||||||
|
diff --git a/media/gpu/vaapi/vaapi_picture_factory.cc b/media/gpu/vaapi/vaapi_picture_factory.cc
|
||||||
|
index 719035b87c..9c7d7387d2 100644
|
||||||
|
--- a/media/gpu/vaapi/vaapi_picture_factory.cc
|
||||||
|
+++ b/media/gpu/vaapi/vaapi_picture_factory.cc
|
||||||
|
@@ -10,13 +10,13 @@
|
||||||
|
#include "ui/base/ui_base_features.h"
|
||||||
|
#include "ui/gl/gl_bindings.h"
|
||||||
|
|
||||||
|
-#if defined(USE_X11)
|
||||||
|
-#include "media/gpu/vaapi/vaapi_picture_native_pixmap_angle.h"
|
||||||
|
-#include "media/gpu/vaapi/vaapi_picture_tfp.h"
|
||||||
|
-#endif
|
||||||
|
#if defined(USE_OZONE)
|
||||||
|
#include "media/gpu/vaapi/vaapi_picture_native_pixmap_ozone.h"
|
||||||
|
-#endif
|
||||||
|
+#endif // defined(USE_OZONE)
|
||||||
|
+#if BUILDFLAG(USE_VAAPI_X11)
|
||||||
|
+#include "media/gpu/vaapi/vaapi_picture_native_pixmap_angle.h"
|
||||||
|
+#include "media/gpu/vaapi/vaapi_picture_tfp.h"
|
||||||
|
+#endif // BUILDFLAG(USE_VAAPI_X11)
|
||||||
|
#if defined(USE_EGL)
|
||||||
|
#include "media/gpu/vaapi/vaapi_picture_native_pixmap_egl.h"
|
||||||
|
#endif
|
||||||
|
@@ -46,15 +46,13 @@ VaapiPictureFactory::VaapiPictureFactory() {
|
||||||
|
vaapi_impl_pairs_.insert(
|
||||||
|
std::make_pair(gl::kGLImplementationEGLGLES2,
|
||||||
|
VaapiPictureFactory::kVaapiImplementationDrm));
|
||||||
|
-#if defined(USE_X11)
|
||||||
|
+#if BUILDFLAG(USE_VAAPI_X11)
|
||||||
|
vaapi_impl_pairs_.insert(
|
||||||
|
std::make_pair(gl::kGLImplementationEGLANGLE,
|
||||||
|
VaapiPictureFactory::kVaapiImplementationAngle));
|
||||||
|
- if (!features::IsUsingOzonePlatform()) {
|
||||||
|
- vaapi_impl_pairs_.insert(
|
||||||
|
- std::make_pair(gl::kGLImplementationDesktopGL,
|
||||||
|
- VaapiPictureFactory::kVaapiImplementationX11));
|
||||||
|
- }
|
||||||
|
+ vaapi_impl_pairs_.insert(
|
||||||
|
+ std::make_pair(gl::kGLImplementationDesktopGL,
|
||||||
|
+ VaapiPictureFactory::kVaapiImplementationX11));
|
||||||
|
#endif
|
||||||
|
|
||||||
|
DeterminePictureCreationAndDownloadingMechanism();
|
||||||
|
@@ -96,19 +94,19 @@ VaapiPictureFactory::GetVaapiImplementation(gl::GLImplementation gl_impl) {
|
||||||
|
}
|
||||||
|
|
||||||
|
uint32_t VaapiPictureFactory::GetGLTextureTarget() {
|
||||||
|
-#if defined(USE_OZONE)
|
||||||
|
- if (features::IsUsingOzonePlatform())
|
||||||
|
- return GL_TEXTURE_EXTERNAL_OES;
|
||||||
|
-#endif
|
||||||
|
+#if BUILDFLAG(USE_VAAPI_X11)
|
||||||
|
return GL_TEXTURE_2D;
|
||||||
|
+#else
|
||||||
|
+ return GL_TEXTURE_EXTERNAL_OES;
|
||||||
|
+#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
gfx::BufferFormat VaapiPictureFactory::GetBufferFormat() {
|
||||||
|
-#if defined(USE_OZONE)
|
||||||
|
- if (features::IsUsingOzonePlatform())
|
||||||
|
- return gfx::BufferFormat::YUV_420_BIPLANAR;
|
||||||
|
-#endif
|
||||||
|
+#if BUILDFLAG(USE_VAAPI_X11)
|
||||||
|
return gfx::BufferFormat::RGBX_8888;
|
||||||
|
+#else
|
||||||
|
+ return gfx::BufferFormat::YUV_420_BIPLANAR;
|
||||||
|
+#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
void VaapiPictureFactory::DeterminePictureCreationAndDownloadingMechanism() {
|
||||||
|
@@ -116,51 +114,43 @@ void VaapiPictureFactory::DeterminePictureCreationAndDownloadingMechanism() {
|
||||||
|
#if defined(USE_OZONE)
|
||||||
|
// We can be called without GL initialized, which is valid if we use Ozone.
|
||||||
|
case kVaapiImplementationNone:
|
||||||
|
- if (features::IsUsingOzonePlatform()) {
|
||||||
|
- create_picture_cb_ = base::BindRepeating(
|
||||||
|
- &CreateVaapiPictureNativeImpl<VaapiPictureNativePixmapOzone>);
|
||||||
|
- needs_vpp_for_downloading_ = true;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- // This is reached by unit tests which don't require create_picture_cb_
|
||||||
|
- // to be initialized or called.
|
||||||
|
+ create_picture_cb_ = base::BindRepeating(
|
||||||
|
+ &CreateVaapiPictureNativeImpl<VaapiPictureNativePixmapOzone>);
|
||||||
|
+ needs_vpp_for_downloading_ = true;
|
||||||
|
break;
|
||||||
|
#endif // defined(USE_OZONE)
|
||||||
|
-#if defined(USE_X11)
|
||||||
|
+#if BUILDFLAG(USE_VAAPI_X11)
|
||||||
|
case kVaapiImplementationX11:
|
||||||
|
- DCHECK(!features::IsUsingOzonePlatform());
|
||||||
|
create_picture_cb_ =
|
||||||
|
base::BindRepeating(&CreateVaapiPictureNativeImpl<VaapiTFPPicture>);
|
||||||
|
// Neither VaapiTFPPicture or VaapiPictureNativePixmapAngle needs the VPP.
|
||||||
|
needs_vpp_for_downloading_ = false;
|
||||||
|
break;
|
||||||
|
case kVaapiImplementationAngle:
|
||||||
|
- DCHECK(!features::IsUsingOzonePlatform());
|
||||||
|
create_picture_cb_ = base::BindRepeating(
|
||||||
|
&CreateVaapiPictureNativeImpl<VaapiPictureNativePixmapAngle>);
|
||||||
|
// Neither VaapiTFPPicture or VaapiPictureNativePixmapAngle needs the VPP.
|
||||||
|
needs_vpp_for_downloading_ = false;
|
||||||
|
break;
|
||||||
|
-#endif // defined(USE_X11)
|
||||||
|
+#endif // BUILDFLAG(USE_VAAPI_X11)
|
||||||
|
case kVaapiImplementationDrm:
|
||||||
|
#if defined(USE_OZONE)
|
||||||
|
- if (features::IsUsingOzonePlatform()) {
|
||||||
|
- create_picture_cb_ = base::BindRepeating(
|
||||||
|
- &CreateVaapiPictureNativeImpl<VaapiPictureNativePixmapOzone>);
|
||||||
|
- needs_vpp_for_downloading_ = true;
|
||||||
|
- break;
|
||||||
|
- }
|
||||||
|
-#endif // defined(USE_OZONE)
|
||||||
|
-#if defined(USE_EGL)
|
||||||
|
+ create_picture_cb_ = base::BindRepeating(
|
||||||
|
+ &CreateVaapiPictureNativeImpl<VaapiPictureNativePixmapOzone>);
|
||||||
|
+ needs_vpp_for_downloading_ = true;
|
||||||
|
+ break;
|
||||||
|
+#elif defined(USE_EGL)
|
||||||
|
create_picture_cb_ = base::BindRepeating(
|
||||||
|
&CreateVaapiPictureNativeImpl<VaapiPictureNativePixmapEgl>);
|
||||||
|
needs_vpp_for_downloading_ = true;
|
||||||
|
break;
|
||||||
|
-#endif // defined(USE_EGL)
|
||||||
|
+#else
|
||||||
|
// ozone or egl must be used to use the DRM implementation.
|
||||||
|
- NOTREACHED();
|
||||||
|
+ FALLTHROUGH;
|
||||||
|
+#endif
|
||||||
|
default:
|
||||||
|
NOTREACHED();
|
||||||
|
+ break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
diff --git a/media/gpu/vaapi/vaapi_picture_native_pixmap_angle.cc b/media/gpu/vaapi/vaapi_picture_native_pixmap_angle.cc
|
||||||
|
index 9de0c93b44..e5b9908490 100644
|
||||||
|
--- a/media/gpu/vaapi/vaapi_picture_native_pixmap_angle.cc
|
||||||
|
+++ b/media/gpu/vaapi/vaapi_picture_native_pixmap_angle.cc
|
||||||
|
@@ -6,7 +6,6 @@
|
||||||
|
|
||||||
|
#include "media/gpu/vaapi/va_surface.h"
|
||||||
|
#include "media/gpu/vaapi/vaapi_wrapper.h"
|
||||||
|
-#include "ui/base/ui_base_features.h"
|
||||||
|
#include "ui/gfx/x/connection.h"
|
||||||
|
#include "ui/gfx/x/future.h"
|
||||||
|
#include "ui/gfx/x/xproto.h"
|
||||||
|
@@ -92,7 +91,6 @@ Status VaapiPictureNativePixmapAngle::Allocate(gfx::BufferFormat format) {
|
||||||
|
if (!make_context_current_cb_ || !make_context_current_cb_.Run())
|
||||||
|
return StatusCode::kVaapiBadContext;
|
||||||
|
|
||||||
|
- DCHECK(!features::IsUsingOzonePlatform());
|
||||||
|
auto image =
|
||||||
|
base::MakeRefCounted<gl::GLImageEGLPixmap>(visible_size_, format);
|
||||||
|
if (!image)
|
||||||
|
diff --git a/media/gpu/vaapi/vaapi_picture_tfp.cc b/media/gpu/vaapi/vaapi_picture_tfp.cc
|
||||||
|
index 3f7e221d8a..11914e3640 100644
|
||||||
|
--- a/media/gpu/vaapi/vaapi_picture_tfp.cc
|
||||||
|
+++ b/media/gpu/vaapi/vaapi_picture_tfp.cc
|
||||||
|
@@ -6,7 +6,6 @@
|
||||||
|
|
||||||
|
#include "media/gpu/vaapi/va_surface.h"
|
||||||
|
#include "media/gpu/vaapi/vaapi_wrapper.h"
|
||||||
|
-#include "ui/base/ui_base_features.h"
|
||||||
|
#include "ui/gfx/x/connection.h"
|
||||||
|
#include "ui/gfx/x/future.h"
|
||||||
|
#include "ui/gl/gl_bindings.h"
|
||||||
|
@@ -37,7 +36,6 @@ VaapiTFPPicture::VaapiTFPPicture(
|
||||||
|
connection_(x11::Connection::Get()),
|
||||||
|
x_pixmap_(x11::Pixmap::None) {
|
||||||
|
DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
|
||||||
|
- DCHECK(!features::IsUsingOzonePlatform());
|
||||||
|
DCHECK(texture_id);
|
||||||
|
DCHECK(client_texture_id);
|
||||||
|
}
|
||||||
|
diff --git a/media/gpu/vaapi/vaapi_video_decode_accelerator.cc b/media/gpu/vaapi/vaapi_video_decode_accelerator.cc
|
||||||
|
index 7514fe4fdd..e4cd7c8d89 100644
|
||||||
|
--- a/media/gpu/vaapi/vaapi_video_decode_accelerator.cc
|
||||||
|
+++ b/media/gpu/vaapi/vaapi_video_decode_accelerator.cc
|
||||||
|
@@ -184,12 +184,6 @@ bool VaapiVideoDecodeAccelerator::Initialize(const Config& config,
|
||||||
|
Client* client) {
|
||||||
|
DCHECK(task_runner_->BelongsToCurrentThread());
|
||||||
|
|
||||||
|
-#if defined(USE_X11)
|
||||||
|
- // TODO(crbug/1116701): implement decode acceleration when running with Ozone.
|
||||||
|
- if (features::IsUsingOzonePlatform())
|
||||||
|
- return false;
|
||||||
|
-#endif
|
||||||
|
-
|
||||||
|
vaapi_picture_factory_ = std::make_unique<VaapiPictureFactory>();
|
||||||
|
|
||||||
|
if (config.is_encrypted()) {
|
||||||
|
@@ -1213,12 +1207,11 @@ VaapiVideoDecodeAccelerator::GetSupportedProfiles() {
|
||||||
|
|
||||||
|
VaapiVideoDecodeAccelerator::BufferAllocationMode
|
||||||
|
VaapiVideoDecodeAccelerator::DecideBufferAllocationMode() {
|
||||||
|
-#if defined(USE_X11)
|
||||||
|
+#if BUILDFLAG(USE_VAAPI_X11)
|
||||||
|
// The IMPORT mode is used for Android on Chrome OS, so this doesn't apply
|
||||||
|
// here.
|
||||||
|
DCHECK_NE(output_mode_, VideoDecodeAccelerator::Config::OutputMode::IMPORT);
|
||||||
|
// TODO(crbug/1116701): get video decode acceleration working with ozone.
|
||||||
|
- DCHECK(!features::IsUsingOzonePlatform());
|
||||||
|
// For H.264 on older devices, another +1 is experimentally needed for
|
||||||
|
// high-to-high resolution changes.
|
||||||
|
// TODO(mcasas): Figure out why and why only H264, see crbug.com/912295 and
|
||||||
|
diff --git a/media/gpu/vaapi/vaapi_video_decode_accelerator_unittest.cc b/media/gpu/vaapi/vaapi_video_decode_accelerator_unittest.cc
|
||||||
|
index 5b9a543386..826bb103b1 100644
|
||||||
|
--- a/media/gpu/vaapi/vaapi_video_decode_accelerator_unittest.cc
|
||||||
|
+++ b/media/gpu/vaapi/vaapi_video_decode_accelerator_unittest.cc
|
||||||
|
@@ -17,7 +17,6 @@
|
||||||
|
#include "media/gpu/vaapi/vaapi_wrapper.h"
|
||||||
|
#include "testing/gmock/include/gmock/gmock.h"
|
||||||
|
#include "testing/gtest/include/gtest/gtest.h"
|
||||||
|
-#include "ui/base/ui_base_features.h"
|
||||||
|
|
||||||
|
using base::test::RunClosure;
|
||||||
|
using ::testing::_;
|
||||||
|
@@ -416,12 +415,10 @@ TEST_P(VaapiVideoDecodeAcceleratorTest, SupportedPlatforms) {
|
||||||
|
mock_vaapi_picture_factory_->GetVaapiImplementation(
|
||||||
|
gl::kGLImplementationEGLGLES2));
|
||||||
|
|
||||||
|
-#if defined(USE_X11)
|
||||||
|
- if (!features::IsUsingOzonePlatform()) {
|
||||||
|
- EXPECT_EQ(VaapiPictureFactory::kVaapiImplementationX11,
|
||||||
|
- mock_vaapi_picture_factory_->GetVaapiImplementation(
|
||||||
|
- gl::kGLImplementationDesktopGL));
|
||||||
|
- }
|
||||||
|
+#if BUILDFLAG(USE_VAAPI_X11)
|
||||||
|
+ EXPECT_EQ(VaapiPictureFactory::kVaapiImplementationX11,
|
||||||
|
+ mock_vaapi_picture_factory_->GetVaapiImplementation(
|
||||||
|
+ gl::kGLImplementationDesktopGL));
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
diff --git a/media/gpu/vaapi/vaapi_wrapper.cc b/media/gpu/vaapi/vaapi_wrapper.cc
|
||||||
|
index 754d258848..e528b0f84d 100644
|
||||||
|
--- a/media/gpu/vaapi/vaapi_wrapper.cc
|
||||||
|
+++ b/media/gpu/vaapi/vaapi_wrapper.cc
|
||||||
|
@@ -65,7 +65,7 @@
|
||||||
|
#include "ui/gl/gl_bindings.h"
|
||||||
|
#include "ui/gl/gl_implementation.h"
|
||||||
|
|
||||||
|
-#if defined(USE_X11)
|
||||||
|
+#if BUILDFLAG(USE_VAAPI_X11)
|
||||||
|
typedef XID Drawable;
|
||||||
|
|
||||||
|
extern "C" {
|
||||||
|
@@ -73,7 +73,7 @@ extern "C" {
|
||||||
|
}
|
||||||
|
|
||||||
|
#include "ui/gfx/x/connection.h" // nogncheck
|
||||||
|
-#endif
|
||||||
|
+#endif // BUILDFLAG(USE_VAAPI_X11)
|
||||||
|
|
||||||
|
#if defined(USE_OZONE)
|
||||||
|
#include "ui/ozone/public/ozone_platform.h"
|
||||||
|
@@ -87,14 +87,14 @@ using media_gpu_vaapi::kModuleVa_prot;
|
||||||
|
|
||||||
|
using media_gpu_vaapi::kModuleVa;
|
||||||
|
using media_gpu_vaapi::kModuleVa_drm;
|
||||||
|
-#if defined(USE_X11)
|
||||||
|
+#if BUILDFLAG(USE_VAAPI_X11)
|
||||||
|
using media_gpu_vaapi::kModuleVa_x11;
|
||||||
|
-#endif
|
||||||
|
+#endif // BUILDFLAG(USE_VAAPI_X11)
|
||||||
|
using media_gpu_vaapi::InitializeStubs;
|
||||||
|
using media_gpu_vaapi::IsVaInitialized;
|
||||||
|
-#if defined(USE_X11)
|
||||||
|
+#if BUILDFLAG(USE_VAAPI_X11)
|
||||||
|
using media_gpu_vaapi::IsVa_x11Initialized;
|
||||||
|
-#endif
|
||||||
|
+#endif // BUILDFLAG(USE_VAAPI_X11)
|
||||||
|
using media_gpu_vaapi::IsVa_drmInitialized;
|
||||||
|
using media_gpu_vaapi::StubPathMap;
|
||||||
|
|
||||||
|
@@ -559,10 +559,20 @@ VADisplayState::VADisplayState()
|
||||||
|
bool VADisplayState::Initialize() {
|
||||||
|
base::AutoLock auto_lock(va_lock_);
|
||||||
|
|
||||||
|
+#if defined(USE_OZONE) && defined(OS_LINUX)
|
||||||
|
+ // TODO(crbug.com/1116701): add vaapi support for other Ozone platforms on
|
||||||
|
+ // Linux. See comment in OzonePlatform::PlatformProperties::supports_vaapi
|
||||||
|
+ // for more details. This will also require revisiting everything that's
|
||||||
|
+ // guarded by USE_VAAPI_X11. For example, if USE_VAAPI_X11 is true, but the
|
||||||
|
+ // user chooses the Wayland backend for Ozone at runtime, then many things (if
|
||||||
|
+ // not all) that we do for X11 won't apply.
|
||||||
|
+ if (!ui::OzonePlatform::GetInstance()->GetPlatformProperties().supports_vaapi)
|
||||||
|
+ return false;
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
bool libraries_initialized = IsVaInitialized() && IsVa_drmInitialized();
|
||||||
|
-#if defined(USE_X11)
|
||||||
|
- if (!features::IsUsingOzonePlatform())
|
||||||
|
- libraries_initialized = libraries_initialized && IsVa_x11Initialized();
|
||||||
|
+#if BUILDFLAG(USE_VAAPI_X11)
|
||||||
|
+ libraries_initialized = libraries_initialized && IsVa_x11Initialized();
|
||||||
|
#endif
|
||||||
|
if (!libraries_initialized)
|
||||||
|
return false;
|
||||||
|
@@ -577,34 +587,25 @@ bool VADisplayState::Initialize() {
|
||||||
|
return success;
|
||||||
|
}
|
||||||
|
|
||||||
|
-#if defined(USE_X11)
|
||||||
|
+#if BUILDFLAG(USE_VAAPI_X11)
|
||||||
|
|
||||||
|
absl::optional<VADisplay> GetVADisplayStateX11(const base::ScopedFD& drm_fd) {
|
||||||
|
- bool use_drm_as_fallback = false;
|
||||||
|
switch (gl::GetGLImplementation()) {
|
||||||
|
case gl::kGLImplementationEGLGLES2:
|
||||||
|
return vaGetDisplayDRM(drm_fd.get());
|
||||||
|
|
||||||
|
case gl::kGLImplementationNone:
|
||||||
|
- use_drm_as_fallback = true;
|
||||||
|
- FALLTHROUGH;
|
||||||
|
|
||||||
|
case gl::kGLImplementationDesktopGL: {
|
||||||
|
- if (!features::IsUsingOzonePlatform()) {
|
||||||
|
- VADisplay display =
|
||||||
|
- vaGetDisplay(x11::Connection::Get()->GetXlibDisplay());
|
||||||
|
- if (vaDisplayIsValid(display))
|
||||||
|
- return display;
|
||||||
|
- return vaGetDisplayDRM(drm_fd.get());
|
||||||
|
- }
|
||||||
|
- break;
|
||||||
|
+ VADisplay display =
|
||||||
|
+ vaGetDisplay(x11::Connection::Get()->GetXlibDisplay());
|
||||||
|
+ if (vaDisplayIsValid(display))
|
||||||
|
+ return display;
|
||||||
|
+ return vaGetDisplayDRM(drm_fd.get());
|
||||||
|
}
|
||||||
|
|
||||||
|
- case gl::kGLImplementationEGLANGLE: {
|
||||||
|
- if (!features::IsUsingOzonePlatform())
|
||||||
|
- return vaGetDisplay(x11::Connection::Get()->GetXlibDisplay());
|
||||||
|
- break;
|
||||||
|
- }
|
||||||
|
+ case gl::kGLImplementationEGLANGLE:
|
||||||
|
+ return vaGetDisplay(x11::Connection::Get()->GetXlibDisplay());
|
||||||
|
|
||||||
|
default:
|
||||||
|
LOG(WARNING) << "VAAPI video acceleration not available for "
|
||||||
|
@@ -612,10 +613,6 @@ absl::optional<VADisplay> GetVADisplayStateX11(const base::ScopedFD& drm_fd) {
|
||||||
|
gl::GetGLImplementationParts());
|
||||||
|
return absl::nullopt;
|
||||||
|
}
|
||||||
|
-
|
||||||
|
- if (use_drm_as_fallback)
|
||||||
|
- return vaGetDisplayDRM(drm_fd.get());
|
||||||
|
- return absl::nullopt;
|
||||||
|
}
|
||||||
|
|
||||||
|
#else
|
||||||
|
@@ -633,11 +630,11 @@ absl::optional<VADisplay> GetVADisplayState(const base::ScopedFD& drm_fd) {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
-#endif // defined(USE_X11)
|
||||||
|
+#endif // BUILDFLAG(USE_VAAPI_X11)
|
||||||
|
|
||||||
|
bool VADisplayState::InitializeVaDisplay_Locked() {
|
||||||
|
absl::optional<VADisplay> display =
|
||||||
|
-#if defined(USE_X11)
|
||||||
|
+#if BUILDFLAG(USE_VAAPI_X11)
|
||||||
|
GetVADisplayStateX11(drm_fd_);
|
||||||
|
#else
|
||||||
|
GetVADisplayState(drm_fd_);
|
||||||
|
@@ -702,10 +699,9 @@ bool VADisplayState::InitializeOnce() {
|
||||||
|
if (!InitializeVaDisplay_Locked() || !InitializeVaDriver_Locked())
|
||||||
|
return false;
|
||||||
|
|
||||||
|
-#if defined(USE_X11)
|
||||||
|
+#if BUILDFLAG(USE_VAAPI_X11)
|
||||||
|
if (gl::GetGLImplementation() == gl::kGLImplementationEGLANGLE &&
|
||||||
|
implementation_type_ == VAImplementation::kIntelIHD) {
|
||||||
|
- DCHECK(!features::IsUsingOzonePlatform());
|
||||||
|
constexpr char libva_driver_impl_env[] = "LIBVA_DRIVER_NAME";
|
||||||
|
// TODO(crbug/1116703) The libva intel-media driver has a known segfault in
|
||||||
|
// vaPutSurface, so until this is fixed, fall back to the i965 driver. There
|
||||||
|
@@ -722,7 +718,7 @@ bool VADisplayState::InitializeOnce() {
|
||||||
|
if (!InitializeVaDisplay_Locked() || !InitializeVaDriver_Locked())
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
-#endif // USE_X11
|
||||||
|
+#endif // BUILDFLAG(USE_VAAPI_X11)
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
@@ -2452,11 +2448,10 @@ bool VaapiWrapper::MapAndCopyAndExecute(
|
||||||
|
return Execute_Locked(va_surface_id, va_buffer_ids);
|
||||||
|
}
|
||||||
|
|
||||||
|
-#if defined(USE_X11)
|
||||||
|
+#if BUILDFLAG(USE_VAAPI_X11)
|
||||||
|
bool VaapiWrapper::PutSurfaceIntoPixmap(VASurfaceID va_surface_id,
|
||||||
|
x11::Pixmap x_pixmap,
|
||||||
|
gfx::Size dest_size) {
|
||||||
|
- DCHECK(!features::IsUsingOzonePlatform());
|
||||||
|
base::AutoLock auto_lock(*va_lock_);
|
||||||
|
|
||||||
|
VAStatus va_res = vaSyncSurface(va_display_, va_surface_id);
|
||||||
|
@@ -2470,7 +2465,7 @@ bool VaapiWrapper::PutSurfaceIntoPixmap(VASurfaceID va_surface_id,
|
||||||
|
VA_SUCCESS_OR_RETURN(va_res, VaapiFunctions::kVAPutSurface, false);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
-#endif // USE_X11
|
||||||
|
+#endif // BUILDFLAG(USE_VAAPI_X11)
|
||||||
|
|
||||||
|
std::unique_ptr<ScopedVAImage> VaapiWrapper::CreateVaImage(
|
||||||
|
VASurfaceID va_surface_id,
|
||||||
|
@@ -2844,9 +2839,8 @@ void VaapiWrapper::PreSandboxInitialization() {
|
||||||
|
|
||||||
|
paths[kModuleVa].push_back(std::string("libva.so.") + va_suffix);
|
||||||
|
paths[kModuleVa_drm].push_back(std::string("libva-drm.so.") + va_suffix);
|
||||||
|
-#if defined(USE_X11)
|
||||||
|
- if (!features::IsUsingOzonePlatform())
|
||||||
|
- paths[kModuleVa_x11].push_back(std::string("libva-x11.so.") + va_suffix);
|
||||||
|
+#if BUILDFLAG(USE_VAAPI_X11)
|
||||||
|
+ paths[kModuleVa_x11].push_back(std::string("libva-x11.so.") + va_suffix);
|
||||||
|
#endif
|
||||||
|
#if BUILDFLAG(IS_CHROMEOS_ASH)
|
||||||
|
paths[kModuleVa_prot].push_back(std::string("libva.so.") + va_suffix);
|
||||||
|
diff --git a/media/gpu/vaapi/vaapi_wrapper.h b/media/gpu/vaapi/vaapi_wrapper.h
|
||||||
|
index 0e3da53624..88ffcd0799 100644
|
||||||
|
--- a/media/gpu/vaapi/vaapi_wrapper.h
|
||||||
|
+++ b/media/gpu/vaapi/vaapi_wrapper.h
|
||||||
|
@@ -36,9 +36,9 @@
|
||||||
|
#include "third_party/abseil-cpp/absl/types/optional.h"
|
||||||
|
#include "ui/gfx/geometry/size.h"
|
||||||
|
|
||||||
|
-#if defined(USE_X11)
|
||||||
|
+#if BUILDFLAG(USE_VAAPI_X11)
|
||||||
|
#include "ui/gfx/x/xproto.h" // nogncheck
|
||||||
|
-#endif // USE_X11
|
||||||
|
+#endif // BUILDFLAG(USE_VAAPI_X11)
|
||||||
|
|
||||||
|
namespace gfx {
|
||||||
|
enum class BufferFormat;
|
||||||
|
@@ -426,13 +426,13 @@ class MEDIA_GPU_EXPORT VaapiWrapper
|
||||||
|
const std::vector<std::pair<VABufferID, VABufferDescriptor>>& va_buffers)
|
||||||
|
WARN_UNUSED_RESULT;
|
||||||
|
|
||||||
|
-#if defined(USE_X11)
|
||||||
|
+#if BUILDFLAG(USE_VAAPI_X11)
|
||||||
|
// Put data from |va_surface_id| into |x_pixmap| of size
|
||||||
|
// |dest_size|, converting/scaling to it.
|
||||||
|
bool PutSurfaceIntoPixmap(VASurfaceID va_surface_id,
|
||||||
|
x11::Pixmap x_pixmap,
|
||||||
|
gfx::Size dest_size) WARN_UNUSED_RESULT;
|
||||||
|
-#endif // USE_X11
|
||||||
|
+#endif // BUILDFLAG(USE_VAAPI_X11)
|
||||||
|
|
||||||
|
// Creates a ScopedVAImage from a VASurface |va_surface_id| and map it into
|
||||||
|
// memory with the given |format| and |size|. If |format| is not equal to the
|
||||||
|
diff --git a/ui/ozone/platform/x11/ozone_platform_x11.cc b/ui/ozone/platform/x11/ozone_platform_x11.cc
|
||||||
|
index 8889828e0f..963dc7a0cd 100644
|
||||||
|
--- a/ui/ozone/platform/x11/ozone_platform_x11.cc
|
||||||
|
+++ b/ui/ozone/platform/x11/ozone_platform_x11.cc
|
||||||
|
@@ -208,6 +208,9 @@ class OzonePlatformX11 : public OzonePlatform,
|
||||||
|
properties->supports_global_application_menus = true;
|
||||||
|
properties->app_modal_dialogs_use_event_blocker = true;
|
||||||
|
properties->fetch_buffer_formats_for_gmb_on_gpu = true;
|
||||||
|
+#if defined(OS_LINUX)
|
||||||
|
+ properties->supports_vaapi = true;
|
||||||
|
+#endif
|
||||||
|
|
||||||
|
initialised = true;
|
||||||
|
}
|
||||||
|
diff --git a/ui/ozone/public/ozone_platform.h b/ui/ozone/public/ozone_platform.h
|
||||||
|
index df95f07486..2d7f44bbfa 100644
|
||||||
|
--- a/ui/ozone/public/ozone_platform.h
|
||||||
|
+++ b/ui/ozone/public/ozone_platform.h
|
||||||
|
@@ -15,6 +15,7 @@
|
||||||
|
#include "base/macros.h"
|
||||||
|
#include "base/message_loop/message_pump_type.h"
|
||||||
|
#include "base/single_thread_task_runner.h"
|
||||||
|
+#include "build/build_config.h"
|
||||||
|
#include "mojo/public/cpp/bindings/binder_map.h"
|
||||||
|
#include "ui/gfx/buffer_types.h"
|
||||||
|
#include "ui/gfx/native_widget_types.h"
|
||||||
|
@@ -154,6 +155,15 @@ class COMPONENT_EXPORT(OZONE) OzonePlatform {
|
||||||
|
// Determines whether buffer formats should be fetched on GPU and passed
|
||||||
|
// back via gpu extra info.
|
||||||
|
bool fetch_buffer_formats_for_gmb_on_gpu = false;
|
||||||
|
+
|
||||||
|
+#if defined(OS_LINUX)
|
||||||
|
+ // TODO(crbug.com/1116701): add vaapi support for other Ozone platforms on
|
||||||
|
+ // Linux. At the moment, VA-API Linux implementation supports only X11
|
||||||
|
+ // backend. This implementation must be refactored to support Ozone
|
||||||
|
+ // properly. As a temporary solution, VA-API on Linux checks if vaapi is
|
||||||
|
+ // supported (which implicitly means that it is Ozone/X11).
|
||||||
|
+ bool supports_vaapi = false;
|
||||||
|
+#endif
|
||||||
|
};
|
||||||
|
|
||||||
|
// Groups platform properties that can only be known at run time.
|
50
chromium-96.0.4664.45-gcc-2.34.patch
Normal file
50
chromium-96.0.4664.45-gcc-2.34.patch
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
From 600d63c2c59a9892dbc5423d7d8bb1565a9f91e7 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Michel Salim <michel@fb.com>
|
||||||
|
Date: Thu, 04 Nov 2021 14:22:40 -0700
|
||||||
|
Subject: [PATCH] Handle long SIGSTKSZ in glibc > 2.33
|
||||||
|
|
||||||
|
`SIGSTKSZ` is no longer constant in glibc > 2.33 but a function
|
||||||
|
returning a long. Cast before taking `max`.
|
||||||
|
|
||||||
|
See https://sourceware.org/git/?p=glibc.git;a=blob;f=NEWS;h=85e84fe53699fe9e392edffa993612ce08b2954a;hb=HEAD
|
||||||
|
|
||||||
|
Signed-off-by: Michel Salim <michel@fb.com>
|
||||||
|
Change-Id: I197f8ff3053eede80d6aed096be4f0113dd43241
|
||||||
|
(relocated to chromium repo, removed static)
|
||||||
|
---
|
||||||
|
|
||||||
|
diff --git a/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc b/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc
|
||||||
|
index ca353c4..5cdabcf 100644
|
||||||
|
--- a/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc
|
||||||
|
+++ b/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc
|
||||||
|
@@ -138,7 +138,7 @@
|
||||||
|
// SIGSTKSZ may be too small to prevent the signal handlers from overrunning
|
||||||
|
// the alternative stack. Ensure that the size of the alternative stack is
|
||||||
|
// large enough.
|
||||||
|
- static const unsigned kSigStackSize = std::max(16384, SIGSTKSZ);
|
||||||
|
+ const unsigned kSigStackSize = std::max(16384U, (unsigned)SIGSTKSZ);
|
||||||
|
|
||||||
|
// Only set an alternative stack if there isn't already one, or if the current
|
||||||
|
// one is too small.
|
||||||
|
diff --git a/sandbox/linux/services/credentials.cc b/sandbox/linux/services/credentials.cc
|
||||||
|
index ca6b595..1c1ee42 100644
|
||||||
|
--- a/sandbox/linux/services/credentials.cc
|
||||||
|
+++ b/sandbox/linux/services/credentials.cc
|
||||||
|
@@ -11,6 +11,7 @@
|
||||||
|
#include <stddef.h>
|
||||||
|
#include <stdint.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
+#include <string.h>
|
||||||
|
#include <sys/syscall.h>
|
||||||
|
#include <sys/types.h>
|
||||||
|
#include <sys/wait.h>
|
||||||
|
@@ -100,7 +101,8 @@ bool ChrootToSafeEmptyDir() {
|
||||||
|
// TODO(crbug.com/1247458) Broken in MSan builds after LLVM f1bb30a4956f.
|
||||||
|
clone_flags |= CLONE_VM | CLONE_VFORK | CLONE_SETTLS;
|
||||||
|
|
||||||
|
- char tls_buf[PTHREAD_STACK_MIN] = {0};
|
||||||
|
+ char tls_buf[PTHREAD_STACK_MIN];
|
||||||
|
+ memset(tls_buf, 0, PTHREAD_STACK_MIN);
|
||||||
|
tls = tls_buf;
|
||||||
|
#endif
|
||||||
|
|
@ -1,8 +1,8 @@
|
|||||||
%define MAJver %(echo %version | cut -d. -f1)
|
%define MAJver %(echo %version | cut -d. -f1)
|
||||||
%define gcc_patchset 7
|
%define gcc_patchset 4
|
||||||
Name: chromium
|
Name: chromium
|
||||||
Epoch: 3
|
Epoch: 3
|
||||||
Version: 92.0.4515.131
|
Version: 96.0.4664.45
|
||||||
Release: 1mamba
|
Release: 1mamba
|
||||||
Summary: An open-source browser project that aims to build a safer, faster, and more stable way to experience the web
|
Summary: An open-source browser project that aims to build a safer, faster, and more stable way to experience the web
|
||||||
Group: Graphical Desktop/Applications/Internet
|
Group: Graphical Desktop/Applications/Internet
|
||||||
@ -30,10 +30,18 @@ Patch9: chromium-92.0.4515.107-linux-sandbox-syscall-broker-use-struct-ke
|
|||||||
Patch10: chromium-92.0.4515.107-linux-sandbox-fix-fstatat-crash.patch
|
Patch10: chromium-92.0.4515.107-linux-sandbox-fix-fstatat-crash.patch
|
||||||
Patch11: chromium-92.0.4515.107-make-GetUsableSize-handle-nullptr-gracefully.patch
|
Patch11: chromium-92.0.4515.107-make-GetUsableSize-handle-nullptr-gracefully.patch
|
||||||
Patch12: chromium-92.0.4515.107-sql-make-VirtualCursor-standard-layout-type.patch
|
Patch12: chromium-92.0.4515.107-sql-make-VirtualCursor-standard-layout-type.patch
|
||||||
Patch13: chromium-92.0.4515.131-breakpad-gcc-11.2.0.patch
|
|
||||||
Patch14: chromium-92.0.4515.131-sandbox-gcc-11.2.0.patch
|
|
||||||
Patch15: chromium-92.0.4515.131-freetype-2.11.patch
|
Patch15: chromium-92.0.4515.131-freetype-2.11.patch
|
||||||
Patch16: chromium-92.0.4515.131-gcc-fix-swiftshader-libEGL-visibility.patch
|
Patch16: chromium-92.0.4515.131-gcc-fix-swiftshader-libEGL-visibility.patch
|
||||||
|
Patch17: chromium-93.0.4577.63-replace-blacklist-with-ignorelist.patch
|
||||||
|
Patch18: chromium-94.0.4606.71-use-ffile-compilation-dir.patch
|
||||||
|
Patch19: chromium-94.0.4606.71-ffmpeg-4.4.patch
|
||||||
|
Patch20: chromium-94.0.4606.71-ffmpeg-roll.patch
|
||||||
|
Patch21: chromium-94.0.4606.71-unexpire-accelerated-video-decode-flag.patch
|
||||||
|
Patch22: chromium-94.0.4606.71-add-a-TODO-about-a-missing-pnacl-flag.patch
|
||||||
|
Patch23: chromium-95.0.4638.54-maldoca-depend-on-zlib-instead-of-headers-only.patch
|
||||||
|
Patch24: chromium-95.0.4638.54-harfbuzz-3.patch
|
||||||
|
Patch25: chromium-95.0.4638.54-ozone-x11-fix-VA-API.patch
|
||||||
|
Patch26: chromium-96.0.4664.45-gcc-2.34.patch
|
||||||
License: BSD
|
License: BSD
|
||||||
## AUTOBUILDREQ-BEGIN
|
## AUTOBUILDREQ-BEGIN
|
||||||
BuildRequires: glibc-devel
|
BuildRequires: glibc-devel
|
||||||
@ -79,10 +87,10 @@ BuildRequires: libwebp-devel
|
|||||||
BuildRequires: libxcb-devel
|
BuildRequires: libxcb-devel
|
||||||
BuildRequires: libxkbcommon-devel
|
BuildRequires: libxkbcommon-devel
|
||||||
BuildRequires: libxml2-devel
|
BuildRequires: libxml2-devel
|
||||||
BuildRequires: libxshmfence-devel
|
|
||||||
BuildRequires: libxslt-devel
|
BuildRequires: libxslt-devel
|
||||||
BuildRequires: libz-devel
|
BuildRequires: libz-devel
|
||||||
## AUTOBUILDREQ-END
|
## AUTOBUILDREQ-END
|
||||||
|
BuildRequires: libharfbuzz-devel >= 3.0.0
|
||||||
BuildRequires: libpthread-stubs-devel
|
BuildRequires: libpthread-stubs-devel
|
||||||
BuildRequires: libgnome-keyring-devel
|
BuildRequires: libgnome-keyring-devel
|
||||||
BuildRequires: gperf
|
BuildRequires: gperf
|
||||||
@ -134,28 +142,26 @@ Chromium is an open-source browser project that aims to build a safer, faster, a
|
|||||||
# Allow building against system libraries in official builds
|
# Allow building against system libraries in official builds
|
||||||
sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \
|
sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \
|
||||||
tools/generate_shim_headers/generate_shim_headers.py
|
tools/generate_shim_headers/generate_shim_headers.py
|
||||||
|
|
||||||
#%patch1 -p1
|
|
||||||
#%patch2 -p1
|
|
||||||
%ifarch %{ix86}
|
%ifarch %{ix86}
|
||||||
%patch3 -p1
|
%patch3 -p1
|
||||||
#%patch4 -p1
|
|
||||||
%endif
|
%endif
|
||||||
#%patch5 -p1
|
%patch6 -p1 -b .clang-11-nomerge
|
||||||
%patch6 -p1
|
%patch7 -p1 -b .use-oauth2-client-switches-as-default
|
||||||
%patch7 -p1
|
%patch19 -p1 -b .ffmpeg-4.4
|
||||||
%patch8 -p1
|
%patch20 -Rp1 -b .ffmpeg-roll
|
||||||
%patch9 -p1
|
%patch21 -p0 -b .unexpire-accelerated-video-decode-flag
|
||||||
%patch10 -p1
|
%patch17 -Rp1 -b .replace-blacklist-with-ignorelist
|
||||||
#%patch11 -p1
|
%patch22 -Rp1 -b .add-a-TODO-about-a-missing-pnacl-flag
|
||||||
%patch12 -p1
|
%patch18 -Rp1 -b .use-ffile-compilation-dir
|
||||||
%patch13 -p1
|
%patch12 -p1 -b .sql-make-VirtualCursor-standard-layout-type
|
||||||
%patch14 -p1
|
%patch26 -p1 -b .gcc-2.34
|
||||||
%patch15 -p1
|
|
||||||
%patch16 -p1
|
|
||||||
|
|
||||||
# Fixes for building with libstdc++ instead of libc++
|
# Fixes for building with libstdc++ instead of libc++
|
||||||
patch -Np1 -i patches/chromium-90-ruy-include.patch
|
patch -Np1 -i patches/chromium-96-CommandLine-include.patch
|
||||||
|
patch -Np1 -i patches/chromium-96-RestrictedCookieManager-tuple.patch
|
||||||
|
patch -Np1 -i patches/chromium-96-DrmRenderNodePathFinder-include.patch
|
||||||
|
patch -Np1 -i patches/chromium-96-CouponDB-include.patch
|
||||||
|
|
||||||
# Force script incompatible with Python 3 to use /usr/bin/python2
|
# Force script incompatible with Python 3 to use /usr/bin/python2
|
||||||
sed -i '1s|python$|&2|' third_party/dom_distiller_js/protoc_plugins/*.py
|
sed -i '1s|python$|&2|' third_party/dom_distiller_js/protoc_plugins/*.py
|
||||||
@ -217,7 +223,7 @@ for l in ${_unwanted_bundled_libs[@]}; do
|
|||||||
-delete
|
-delete
|
||||||
done
|
done
|
||||||
|
|
||||||
python2 build/linux/unbundle/replace_gn_files.py \
|
python3 build/linux/unbundle/replace_gn_files.py \
|
||||||
--system-libraries "${!_system_libs[@]}"
|
--system-libraries "${!_system_libs[@]}"
|
||||||
|
|
||||||
mkdir -p third_party/node/linux/node-linux-x64/bin
|
mkdir -p third_party/node/linux/node-linux-x64/bin
|
||||||
@ -312,7 +318,7 @@ install -d -m0755 %{buildroot}%{_libdir}/chromium/ %{buildroot}%{_bindir}
|
|||||||
install -m0755 out/Release/chrome %{buildroot}%{_libdir}/chromium/chromium
|
install -m0755 out/Release/chrome %{buildroot}%{_libdir}/chromium/chromium
|
||||||
install -m0755 out/Release/chrome_sandbox %{buildroot}%{_libdir}/chromium/chrome-sandbox
|
install -m0755 out/Release/chrome_sandbox %{buildroot}%{_libdir}/chromium/chrome-sandbox
|
||||||
install -m0755 out/Release/chromedriver %{buildroot}%{_libdir}/chromium/chromedriver
|
install -m0755 out/Release/chromedriver %{buildroot}%{_libdir}/chromium/chromedriver
|
||||||
install -m0755 out/Release/crashpad_handler %{buildroot}%{_libdir}/chromium/crashpad_handler
|
install -m0755 out/Release/chrome_crashpad_handler %{buildroot}%{_libdir}/chromium/chrome_crashpad_handler
|
||||||
install -m0755 out/Release/libEGL.so %{buildroot}%{_libdir}/chromium/libEGL.so
|
install -m0755 out/Release/libEGL.so %{buildroot}%{_libdir}/chromium/libEGL.so
|
||||||
install -m0755 out/Release/libGLESv2.so %{buildroot}%{_libdir}/chromium/libGLESv2.so
|
install -m0755 out/Release/libGLESv2.so %{buildroot}%{_libdir}/chromium/libGLESv2.so
|
||||||
#install -m0755 out/Release/libwidevinecdm.so %{buildroot}%{_libdir}/chromium/libwidevinecdm.so
|
#install -m0755 out/Release/libwidevinecdm.so %{buildroot}%{_libdir}/chromium/libwidevinecdm.so
|
||||||
@ -362,16 +368,14 @@ cat > %{buildroot}%{_bindir}/chromium << _EOF
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
set -- "\${ARGS[@]}" "\$@"
|
set -- "\${ARGS[@]}" "\$@"
|
||||||
|
|
||||||
# FIXME: --no-sandbox: added as of 92.0.4515.131 as a temporary workaround
|
|
||||||
|
|
||||||
if [ -r /opt/chromium/PepperFlash/manifest.json ]; then
|
if [ -r /opt/chromium/PepperFlash/manifest.json ]; then
|
||||||
PEPPER_FLASH_VERSION="\$(grep '"version":' /opt/chromium/PepperFlash/manifest.json | grep -Po '(?<=version": ")(?:\d|\.)*')"
|
PEPPER_FLASH_VERSION="\$(grep '"version":' /opt/chromium/PepperFlash/manifest.json | grep -Po '(?<=version": ")(?:\d|\.)*')"
|
||||||
exec %{_libdir}/chromium/chromium \\
|
exec %{_libdir}/chromium/chromium \\
|
||||||
--ignore-gpu-blacklist --no-sandbox \\
|
--ignore-gpu-blacklist \\
|
||||||
--ppapi-flash-path=/opt/chromium/PepperFlash/libpepflashplayer.so \\
|
--ppapi-flash-path=/opt/chromium/PepperFlash/libpepflashplayer.so \\
|
||||||
--ppapi-flash-version=\${PEPPER_FLASH_VERSION} "\$@"
|
--ppapi-flash-version=\${PEPPER_FLASH_VERSION} "\$@"
|
||||||
else
|
else
|
||||||
exec %{_libdir}/chromium/chromium --ignore-gpu-blacklist --no-sandbox "\$@"
|
exec %{_libdir}/chromium/chromium --ignore-gpu-blacklist "\$@"
|
||||||
fi
|
fi
|
||||||
_EOF
|
_EOF
|
||||||
chmod 755 %{buildroot}%{_bindir}/chromium
|
chmod 755 %{buildroot}%{_bindir}/chromium
|
||||||
@ -401,7 +405,7 @@ ln -s %{_libdir}/chromium/chromedriver %{buildroot}%{_bindir}/chromedriver
|
|||||||
%dir %{_libdir}/chromium
|
%dir %{_libdir}/chromium
|
||||||
%{_libdir}/chromium/chromium
|
%{_libdir}/chromium/chromium
|
||||||
%{_libdir}/chromium/chromedriver
|
%{_libdir}/chromium/chromedriver
|
||||||
%{_libdir}/chromium/crashpad_handler
|
%{_libdir}/chromium/chrome_crashpad_handler
|
||||||
%{_libdir}/chromium/*.bin
|
%{_libdir}/chromium/*.bin
|
||||||
%{_libdir}/chromium/*.pak
|
%{_libdir}/chromium/*.pak
|
||||||
#%{_libdir}/chromium/chrome-wrapper
|
#%{_libdir}/chromium/chrome-wrapper
|
||||||
@ -421,6 +425,18 @@ ln -s %{_libdir}/chromium/chromedriver %{buildroot}%{_bindir}/chromedriver
|
|||||||
%{_mandir}/man1/chromium.1*
|
%{_mandir}/man1/chromium.1*
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Sun Nov 21 2021 Automatic Build System <autodist@mambasoft.it> 96.0.4664.45-1mamba
|
||||||
|
- automatic version update by autodist
|
||||||
|
|
||||||
|
* Fri Nov 12 2021 Automatic Build System <autodist@mambasoft.it> 95.0.4638.74-1mamba
|
||||||
|
- automatic version update by autodist
|
||||||
|
|
||||||
|
* Tue Oct 12 2021 Automatic Build System <autodist@mambasoft.it> 94.0.4606.81-1mamba
|
||||||
|
- automatic version update by autodist
|
||||||
|
|
||||||
|
* Mon Oct 04 2021 Silvan Calarco <silvan.calarco@mambasoft.it> 94.0.4606.71-1mamba
|
||||||
|
- update to 94.0.4606.71
|
||||||
|
|
||||||
* Mon Aug 09 2021 Automatic Build System <autodist@mambasoft.it> 92.0.4515.131-1mamba
|
* Mon Aug 09 2021 Automatic Build System <autodist@mambasoft.it> 92.0.4515.131-1mamba
|
||||||
- automatic version update by autodist
|
- automatic version update by autodist
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user