From a66ef0fa68018a0a8e280993608b6f04872c91f3 Mon Sep 17 00:00:00 2001 From: jstkdng Date: Thu, 18 Nov 2021 07:56:29 -0500 Subject: upgpkg: ungoogled-chromium 96.0.4664.45-1 upstream release --- .SRCINFO | 30 +- PKGBUILD | 50 +- add-a-TODO-about-a-missing-pnacl-flag.patch | 28 - chromium-95-harfbuzz-3.patch | 31 - ...ca-depend-on-zlib-instead-of-headers-only.patch | 31 - ozone-x11-fix-VA-API.patch | 671 --------------------- ...o-not-typecheck-the-portal-session_handle.patch | 44 -- replace-blacklist-with-ignorelist.patch | 196 ------ ...e-fix-visibility-of-build-config-freetype.patch | 31 + use-ffile-compilation-dir.patch | 65 -- 10 files changed, 56 insertions(+), 1121 deletions(-) delete mode 100644 add-a-TODO-about-a-missing-pnacl-flag.patch delete mode 100644 chromium-95-harfbuzz-3.patch delete mode 100644 maldoca-depend-on-zlib-instead-of-headers-only.patch delete mode 100644 ozone-x11-fix-VA-API.patch delete mode 100644 pipewire-do-not-typecheck-the-portal-session_handle.patch delete mode 100644 replace-blacklist-with-ignorelist.patch create mode 100644 unbundle-fix-visibility-of-build-config-freetype.patch delete mode 100644 use-ffile-compilation-dir.patch diff --git a/.SRCINFO b/.SRCINFO index b10ad42..c516532 100644 --- a/.SRCINFO +++ b/.SRCINFO @@ -1,6 +1,6 @@ pkgbase = ungoogled-chromium pkgdesc = A lightweight approach to removing Google web service dependency - pkgver = 95.0.4638.69 + pkgver = 96.0.4664.45 pkgrel = 1 url = https://github.com/Eloston/ungoogled-chromium arch = x86_64 @@ -50,40 +50,28 @@ pkgbase = ungoogled-chromium optdepends = kwallet: support for storing passwords in KWallet on Plasma provides = chromium conflicts = chromium - source = https://commondatastorage.googleapis.com/chromium-browser-official/chromium-95.0.4638.69.tar.xz + source = https://commondatastorage.googleapis.com/chromium-browser-official/chromium-96.0.4664.45.tar.xz source = https://github.com/foutrelis/chromium-launcher/archive/v8/chromium-launcher-8.tar.gz - source = https://github.com/stha09/chromium-patches/releases/download/chromium-95-patchset-4/chromium-95-patchset-4.tar.xz - source = maldoca-depend-on-zlib-instead-of-headers-only.patch - source = ozone-x11-fix-VA-API.patch - source = chromium-95-harfbuzz-3.patch - source = replace-blacklist-with-ignorelist.patch - source = add-a-TODO-about-a-missing-pnacl-flag.patch - source = use-ffile-compilation-dir.patch - source = pipewire-do-not-typecheck-the-portal-session_handle.patch + source = https://github.com/stha09/chromium-patches/releases/download/chromium-96-patchset-4/chromium-96-patchset-4.tar.xz + source = unbundle-fix-visibility-of-build-config-freetype.patch source = sql-make-VirtualCursor-standard-layout-type.patch source = chromium-93-ffmpeg-4.4.patch source = chromium-94-ffmpeg-roll.patch source = unexpire-accelerated-video-decode-flag.patch source = use-oauth2-client-switches-as-default.patch - source = ungoogled-chromium-95.0.4638.69-1.tar.gz::https://github.com/Eloston/ungoogled-chromium/archive/95.0.4638.69-1.tar.gz + source = ungoogled-chromium-96.0.4664.45-1.tar.gz::https://github.com/Eloston/ungoogled-chromium/archive/96.0.4664.45-1.tar.gz source = chromium-drirc-disable-10bpc-color-configs.conf source = wayland-egl.patch - sha256sums = 38a37d737c6c9a7198402ca614746b2dbb7abbb793bb2cb02dc796b62a22efe7 + sha256sums = 488c6ad983ebf7781cb4d704f70496e8aa2165611b46656d7aa62f269c760407 sha256sums = 213e50f48b67feb4441078d50b0fd431df34323be15be97c55302d3fdac4483a - sha256sums = bc6373f2470a9e6d947a4deaee0612f730112f69552b933c54bb6e60b82dd6f1 - sha256sums = 074b32078b9e53fd9b33709ce5785c120eb0346b015a93921897caed4f95f7b6 - sha256sums = 3af6dfe5c4e6ed1be52a292c30bc0c447cc8498bb108f7973adb438239961474 - sha256sums = d9002f1e33390c3e770637773c81be6731584b18f68f086e955bcc3f66f4510d - sha256sums = d3344ba39b8c6ed202334ba7f441c70d81ddf8cdb15af1aa8c16e9a3a75fbb35 - sha256sums = d53da216538f2e741a6e048ed103964a91a98e9a3c10c27fdfa34d4692fdc455 - sha256sums = 921010cd8fab5f30be76c68b68c9b39fac9e21f4c4133bb709879592bbdf606e - sha256sums = 1889d890ff512a8b82a0f88972e78c78131177d8034750ff53577dfad99b3e3e + sha256sums = 090af7eab39aade15a1786273f2497d6b4abfaef24279fbf97ce0dd1c38c69aa + sha256sums = d0b17162211dd49e3a58c16d1697e7d8c322dcfd3b7890f0c2f920b711f52293 sha256sums = dd317f85e5abfdcfc89c6f23f4c8edbcdebdd5e083dcec770e5da49ee647d150 sha256sums = 1a9e074f417f8ffd78bcd6874d8e2e74a239905bf662f76a7755fa40dc476b57 sha256sums = 56acb6e743d2ab1ed9f3eb01700ade02521769978d03ac43226dec94659b3ace sha256sums = 2a97b26c3d6821b15ef4ef1369905c6fa3e9c8da4877eb9af4361452a425290b sha256sums = e393174d7695d0bafed69e868c5fbfecf07aa6969f3b64596d0bae8b067e1711 - sha256sums = 35debe7f407a4749d4454fc78f52c18955f1d8400750fdc20b179f528106c658 + sha256sums = 8f74125ac735b727c557b2473f650cf540810dbe19944331fefc8020d98ad5dd sha256sums = babda4f5c1179825797496898d77334ac067149cac03d797ab27ac69671a7feb sha256sums = 34d08ea93cb4762cb33c7cffe931358008af32265fc720f2762f0179c3973574 diff --git a/PKGBUILD b/PKGBUILD index 3b6c186..d0581dd 100644 --- a/PKGBUILD +++ b/PKGBUILD @@ -9,7 +9,7 @@ # Contributor: Daniel J Griffiths pkgname=ungoogled-chromium -pkgver=95.0.4638.69 +pkgver=96.0.4664.45 pkgrel=1 _launcher_ver=8 _gcc_patchset=4 @@ -29,28 +29,16 @@ optdepends=('pipewire: WebRTC desktop sharing under Wayland' source=(https://commondatastorage.googleapis.com/chromium-browser-official/chromium-$pkgver.tar.xz https://github.com/foutrelis/chromium-launcher/archive/v$_launcher_ver/chromium-launcher-$_launcher_ver.tar.gz https://github.com/stha09/chromium-patches/releases/download/chromium-${pkgver%%.*}-patchset-$_gcc_patchset/chromium-${pkgver%%.*}-patchset-$_gcc_patchset.tar.xz - maldoca-depend-on-zlib-instead-of-headers-only.patch - ozone-x11-fix-VA-API.patch - chromium-95-harfbuzz-3.patch - replace-blacklist-with-ignorelist.patch - add-a-TODO-about-a-missing-pnacl-flag.patch - use-ffile-compilation-dir.patch - pipewire-do-not-typecheck-the-portal-session_handle.patch + unbundle-fix-visibility-of-build-config-freetype.patch sql-make-VirtualCursor-standard-layout-type.patch chromium-93-ffmpeg-4.4.patch chromium-94-ffmpeg-roll.patch unexpire-accelerated-video-decode-flag.patch use-oauth2-client-switches-as-default.patch) -sha256sums=('38a37d737c6c9a7198402ca614746b2dbb7abbb793bb2cb02dc796b62a22efe7' +sha256sums=('488c6ad983ebf7781cb4d704f70496e8aa2165611b46656d7aa62f269c760407' '213e50f48b67feb4441078d50b0fd431df34323be15be97c55302d3fdac4483a' - 'bc6373f2470a9e6d947a4deaee0612f730112f69552b933c54bb6e60b82dd6f1' - '074b32078b9e53fd9b33709ce5785c120eb0346b015a93921897caed4f95f7b6' - '3af6dfe5c4e6ed1be52a292c30bc0c447cc8498bb108f7973adb438239961474' - 'd9002f1e33390c3e770637773c81be6731584b18f68f086e955bcc3f66f4510d' - 'd3344ba39b8c6ed202334ba7f441c70d81ddf8cdb15af1aa8c16e9a3a75fbb35' - 'd53da216538f2e741a6e048ed103964a91a98e9a3c10c27fdfa34d4692fdc455' - '921010cd8fab5f30be76c68b68c9b39fac9e21f4c4133bb709879592bbdf606e' - '1889d890ff512a8b82a0f88972e78c78131177d8034750ff53577dfad99b3e3e' + '090af7eab39aade15a1786273f2497d6b4abfaef24279fbf97ce0dd1c38c69aa' + 'd0b17162211dd49e3a58c16d1697e7d8c322dcfd3b7890f0c2f920b711f52293' 'dd317f85e5abfdcfc89c6f23f4c8edbcdebdd5e083dcec770e5da49ee647d150' '1a9e074f417f8ffd78bcd6874d8e2e74a239905bf662f76a7755fa40dc476b57' '56acb6e743d2ab1ed9f3eb01700ade02521769978d03ac43226dec94659b3ace' @@ -63,7 +51,7 @@ source=(${source[@]} chromium-drirc-disable-10bpc-color-configs.conf wayland-egl.patch) sha256sums=(${sha256sums[@]} - '35debe7f407a4749d4454fc78f52c18955f1d8400750fdc20b179f528106c658' + '8f74125ac735b727c557b2473f650cf540810dbe19944331fefc8020d98ad5dd' 'babda4f5c1179825797496898d77334ac067149cac03d797ab27ac69671a7feb' '34d08ea93cb4762cb33c7cffe931358008af32265fc720f2762f0179c3973574') @@ -125,25 +113,16 @@ prepare() { patch -Np0 -i ../unexpire-accelerated-video-decode-flag.patch # Upstream fixes - patch -Np1 -i ../maldoca-depend-on-zlib-instead-of-headers-only.patch - patch -Np1 -i ../ozone-x11-fix-VA-API.patch - patch -Np1 -i ../chromium-95-harfbuzz-3.patch - - # Revert transition to -fsanitize-ignorelist (needs newer clang) - patch -Rp1 -i ../replace-blacklist-with-ignorelist.patch - - # Revert addition of -ffile-compilation-dir= (needs newer clang) - patch -Rp1 -i ../add-a-TODO-about-a-missing-pnacl-flag.patch - patch -Rp1 -i ../use-ffile-compilation-dir.patch - - # Fix desktop sharing via Pipewire with xdg-desktop-portal 1.10 - patch -Np1 -d third_party/webrtc <../pipewire-do-not-typecheck-the-portal-session_handle.patch + patch -Np1 -i ../unbundle-fix-visibility-of-build-config-freetype.patch # https://chromium-review.googlesource.com/c/chromium/src/+/2862724 patch -Np1 -i ../sql-make-VirtualCursor-standard-layout-type.patch # Fixes for building with libstdc++ instead of libc++ - patch -Np1 -i ../patches/chromium-95-quiche-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 # Wayland/EGL regression (crbug #1071528 #1071550) patch -Np1 -i ../wayland-egl.patch @@ -271,6 +250,8 @@ package() { local toplevel_files=( chrome_100_percent.pak chrome_200_percent.pak + chrome_crashpad_handler + chromedriver resources.pak v8_context_snapshot.bin @@ -278,8 +259,9 @@ package() { libEGL.so libGLESv2.so - chromedriver - chrome_crashpad_handler + # SwiftShader ICD + libvk_swiftshader.so + vk_swiftshader_icd.json ) if [[ -z ${_system_libs[icu]+set} ]]; then diff --git a/add-a-TODO-about-a-missing-pnacl-flag.patch b/add-a-TODO-about-a-missing-pnacl-flag.patch deleted file mode 100644 index bfeafee..0000000 --- a/add-a-TODO-about-a-missing-pnacl-flag.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 7a23987acb698c2934958cb42a5e7b1cd73fe142 Mon Sep 17 00:00:00 2001 -From: Nico Weber -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 -Commit-Queue: Hans Wennborg -Auto-Submit: Nico Weber -Reviewed-by: Hans Wennborg -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", diff --git a/chromium-95-harfbuzz-3.patch b/chromium-95-harfbuzz-3.patch deleted file mode 100644 index 33fe955..0000000 --- a/chromium-95-harfbuzz-3.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 9e00e702633c47c590a869bc66b5c2ceec09da50 Mon Sep 17 00:00:00 2001 -From: Dominik Röttsches -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 -Commit-Queue: Calder Kitagawa -Auto-Submit: Dominik Röttsches -Reviewed-by: Calder Kitagawa -Reviewed-by: Anders Hartvoll Ruud -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')); diff --git a/maldoca-depend-on-zlib-instead-of-headers-only.patch b/maldoca-depend-on-zlib-instead-of-headers-only.patch deleted file mode 100644 index e1b438c..0000000 --- a/maldoca-depend-on-zlib-instead-of-headers-only.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 0aa878b7839141077071db97ba1cd30edf486827 Mon Sep 17 00:00:00 2001 -From: Stephan Hartmann -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 -Commit-Queue: Stephan Hartmann -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", - ] - diff --git a/ozone-x11-fix-VA-API.patch b/ozone-x11-fix-VA-API.patch deleted file mode 100644 index 61d72bf..0000000 --- a/ozone-x11-fix-VA-API.patch +++ /dev/null @@ -1,671 +0,0 @@ -From a4de986102a45e29c3ef596f22704bdca244c26c Mon Sep 17 00:00:00 2001 -From: Maksim Sisov -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 -Reviewed-by: Andres Calderon Jaramillo -Reviewed-by: Robert Kroeger -Reviewed-by: Xiaohan Wang -Reviewed-by: Alexander Dunaev -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 - #include --#if defined(USE_X11) -+#if BUILDFLAG(USE_VAAPI_X11) - #include --#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); -- 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); -+ 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); - // Neither VaapiTFPPicture or VaapiPictureNativePixmapAngle needs the VPP. - needs_vpp_for_downloading_ = false; - break; - case kVaapiImplementationAngle: -- DCHECK(!features::IsUsingOzonePlatform()); - create_picture_cb_ = base::BindRepeating( - &CreateVaapiPictureNativeImpl); - // 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); -- needs_vpp_for_downloading_ = true; -- break; -- } --#endif // defined(USE_OZONE) --#if defined(USE_EGL) -+ create_picture_cb_ = base::BindRepeating( -+ &CreateVaapiPictureNativeImpl); -+ needs_vpp_for_downloading_ = true; -+ break; -+#elif defined(USE_EGL) - create_picture_cb_ = base::BindRepeating( - &CreateVaapiPictureNativeImpl); - 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(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(); - - 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 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 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 GetVADisplayState(const base::ScopedFD& drm_fd) { - } - } - --#endif // defined(USE_X11) -+#endif // BUILDFLAG(USE_VAAPI_X11) - - bool VADisplayState::InitializeVaDisplay_Locked() { - absl::optional 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 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>& 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. diff --git a/pipewire-do-not-typecheck-the-portal-session_handle.patch b/pipewire-do-not-typecheck-the-portal-session_handle.patch deleted file mode 100644 index 59bfa3d..0000000 --- a/pipewire-do-not-typecheck-the-portal-session_handle.patch +++ /dev/null @@ -1,44 +0,0 @@ -From 408e4da26f1b782005ab10307c83892055d7ef45 Mon Sep 17 00:00:00 2001 -From: Robert Mader -Date: Mon, 20 Sep 2021 15:15:31 +0200 -Subject: [PATCH] Pipewire: Do not typecheck the portal session_handle -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Desktop sharing via Pipewire will break for clients updating to -xdg-desktop-portal 1.10 due to a bug fix in the API implementation[1]. - -This ports over a fix from OBS Studio[2] that also is used in the -downstream Firefox WebRTC copy[3]. - -1: https://github.com/flatpak/xdg-desktop-portal/pull/609 -2: https://github.com/obsproject/obs-studio/pull/5294 -3: https://phabricator.services.mozilla.com/D126053 -Bug: webrtc:13192 -Change-Id: I497dd1bb53cc39dee3732c2e0014e2e36a7afb6c -Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/232329 -Reviewed-by: Erik Språng -Reviewed-by: Tommi -Commit-Queue: Tommi -Cr-Commit-Position: refs/heads/main@{#35153} ---- - modules/desktop_capture/linux/base_capturer_pipewire.cc | 5 +++-- - 1 file changed, 3 insertions(+), 2 deletions(-) - -diff --git a/modules/desktop_capture/linux/base_capturer_pipewire.cc b/modules/desktop_capture/linux/base_capturer_pipewire.cc -index 2d5e973..45229b2 100644 ---- a/modules/desktop_capture/linux/base_capturer_pipewire.cc -+++ b/modules/desktop_capture/linux/base_capturer_pipewire.cc -@@ -801,8 +801,9 @@ void BaseCapturerPipeWire::OnSessionRequestResponseSignal( - Scoped response_data; - g_variant_get(parameters, "(u@a{sv})", &portal_response, - response_data.receive()); -- g_variant_lookup(response_data.get(), "session_handle", "s", -- &that->session_handle_); -+ Scoped session_handle( -+ g_variant_lookup_value(response_data.get(), "session_handle", nullptr)); -+ that->session_handle_ = g_variant_dup_string(session_handle.get(), nullptr); - - if (!that->session_handle_ || portal_response) { - RTC_LOG(LS_ERROR) diff --git a/replace-blacklist-with-ignorelist.patch b/replace-blacklist-with-ignorelist.patch deleted file mode 100644 index 1cc3a50..0000000 --- a/replace-blacklist-with-ignorelist.patch +++ /dev/null @@ -1,196 +0,0 @@ -From 9d080c0934b848ee4a05013c78641e612fcc1e03 Mon Sep 17 00:00:00 2001 -From: Dylan Cutler -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 -> Reviewed-by: Nico Weber -> Reviewed-by: Jonathan Metzman -> 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 -Reviewed-by: Nico Weber -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 diff --git a/unbundle-fix-visibility-of-build-config-freetype.patch b/unbundle-fix-visibility-of-build-config-freetype.patch new file mode 100644 index 0000000..d10023b --- /dev/null +++ b/unbundle-fix-visibility-of-build-config-freetype.patch @@ -0,0 +1,31 @@ +From 271e45339b7b969e98ccef7837cb1b15480b07fc Mon Sep 17 00:00:00 2001 +From: Stephan Hartmann +Date: Thu, 4 Nov 2021 18:58:34 +0000 +Subject: [PATCH] unbundle: fix visibility of //build/config/freetype + +For system freetype //build/linux:freetype_from_pkgconfig is restricted +to //third_party:freetype_harfbuzz and //third_party/harfbuzz-ng:harfbuzz_source. +However //build/config/freetype:freetype is accessing it too. + +Bug: None +Change-Id: Ic4a37b01e4ae221372a9220cbad04c598b844c21 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3259304 +Commit-Queue: Thomas Anderson +Reviewed-by: Thomas Anderson +Cr-Commit-Position: refs/heads/main@{#938388} +--- + build/linux/BUILD.gn | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/build/linux/BUILD.gn b/build/linux/BUILD.gn +index 54314c7687..cd49e3d524 100644 +--- a/build/linux/BUILD.gn ++++ b/build/linux/BUILD.gn +@@ -23,6 +23,7 @@ if (use_system_freetype) { + # the system, use with caution,for details see build/config/freetype/BUILD.gn. + pkg_config("freetype_from_pkgconfig") { + visibility = [ ++ "//build/config/freetype:freetype", + "//third_party:freetype_harfbuzz", + "//third_party/harfbuzz-ng:harfbuzz_source", + ] diff --git a/use-ffile-compilation-dir.patch b/use-ffile-compilation-dir.patch deleted file mode 100644 index eb14513..0000000 --- a/use-ffile-compilation-dir.patch +++ /dev/null @@ -1,65 +0,0 @@ -From 34a955823630096f5b01c2b01d51c1ea59d22763 Mon Sep 17 00:00:00 2001 -From: Zequan Wu -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 -Commit-Queue: Nico Weber -Reviewed-by: Nico Weber -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,." ] -diff --git a/build/config/compiler/compiler.gni b/build/config/compiler/compiler.gni -index 8c259c360a..642319b4f4 100644 ---- a/build/config/compiler/compiler.gni -+++ b/build/config/compiler/compiler.gni -@@ -225,11 +225,8 @@ declare_args() { - # deterministic builds to reduce compile times, so this is less relevant for - # official builders. - strip_absolute_paths_from_debug_symbols_default = -- # TODO(crbug.com/1010267): remove '!use_clang_coverage', coverage build has -- # dependency to absolute path of source files. -- !use_clang_coverage && -- (is_android || is_fuchsia || is_nacl || (is_win && use_lld) || is_linux || -- is_chromeos || (is_apple && !enable_dsyms)) -+ is_android || is_fuchsia || is_nacl || (is_win && use_lld) || is_linux || -+ is_chromeos || (is_apple && !enable_dsyms) - - # If the platform uses stripped absolute paths by default, then we don't expose - # it as a configuration option. If this is causing problems, please file a bug. -- cgit v1.2.3