diff --git a/chromium-94-ConversionStorageSql-lambda.patch b/chromium-94-ConversionStorageSql-lambda.patch new file mode 100644 index 00000000..6746fec7 --- /dev/null +++ b/chromium-94-ConversionStorageSql-lambda.patch @@ -0,0 +1,31 @@ +From 45bea088d3771c7ff9f77173e451422452c031b3 Mon Sep 17 00:00:00 2001 +From: Stephan Hartmann +Date: Mon, 02 Aug 2021 16:57:05 +0000 +Subject: [PATCH] GCC: drop WARN_USED_RESULT in lambda in ConversionStorageSql + +GCC 9.3 only allows GNU attributes between [] and () in lambda +expressions. See https://gcc.gnu.org/PR90333 for details. However, +clang only allows attributes after () only. Seems not strictly +necessary to enforce the attribute here. + +Bug: 819294 +Change-Id: I342deb25239837dea0f6f5e7709b1467789e342b +--- + +diff --git a/content/browser/conversions/conversion_storage_sql.cc b/content/browser/conversions/conversion_storage_sql.cc +index 84bc897..b6fc4e9 100644 +--- a/content/browser/conversions/conversion_storage_sql.cc ++++ b/content/browser/conversions/conversion_storage_sql.cc +@@ -688,9 +688,11 @@ + bool ConversionStorageSql::DeleteExpiredImpressions() { + const int kMaxDeletesPerBatch = 100; + ++ // GCC accepts attribute between [] and () only ++ // clang accepts attribute after () only + auto delete_impressions_from_paged_select = + [this](sql::Statement& statement) +- VALID_CONTEXT_REQUIRED(sequence_checker_) WARN_UNUSED_RESULT -> bool { ++ VALID_CONTEXT_REQUIRED(sequence_checker_) -> bool { + while (true) { + std::vector impression_ids; + while (statement.Step()) { diff --git a/chromium-94-CustomSpaces-include.patch b/chromium-94-CustomSpaces-include.patch new file mode 100644 index 00000000..01757758 --- /dev/null +++ b/chromium-94-CustomSpaces-include.patch @@ -0,0 +1,24 @@ +From 4eeacdaa57b29a079fe09315eb22557c06aa522e Mon Sep 17 00:00:00 2001 +From: Stephan Hartmann +Date: Fri, 13 Aug 2021 12:57:42 +0000 +Subject: [PATCH] IWYU: add memory for std::unique_ptr in blink::CustomSpaces + +--- + .../blink/renderer/platform/heap/v8_wrapper/custom_spaces.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/third_party/blink/renderer/platform/heap/v8_wrapper/custom_spaces.h b/third_party/blink/renderer/platform/heap/v8_wrapper/custom_spaces.h +index df0465a..640cb33 100644 +--- a/third_party/blink/renderer/platform/heap/v8_wrapper/custom_spaces.h ++++ b/third_party/blink/renderer/platform/heap/v8_wrapper/custom_spaces.h +@@ -5,6 +5,7 @@ + #ifndef THIRD_PARTY_BLINK_RENDERER_PLATFORM_HEAP_V8_WRAPPER_CUSTOM_SPACES_H_ + #define THIRD_PARTY_BLINK_RENDERER_PLATFORM_HEAP_V8_WRAPPER_CUSTOM_SPACES_H_ + ++#include + #include + + #include "third_party/blink/renderer/platform/platform_export.h" +-- +2.31.1 + diff --git a/chromium-94.0.4606.54-gcc9-drop-rsp-clobber.patch b/chromium-94.0.4606.54-gcc9-drop-rsp-clobber.patch new file mode 100644 index 00000000..0ccd0b14 --- /dev/null +++ b/chromium-94.0.4606.54-gcc9-drop-rsp-clobber.patch @@ -0,0 +1,12 @@ +diff -up chromium-94.0.4606.54/third_party/tcmalloc/vendor/src/base/linux_syscall_support.h.gcc9 chromium-94.0.4606.54/third_party/tcmalloc/vendor/src/base/linux_syscall_support.h +--- chromium-94.0.4606.54/third_party/tcmalloc/vendor/src/base/linux_syscall_support.h.gcc9 2021-09-20 15:13:05.000000000 -0400 ++++ chromium-94.0.4606.54/third_party/tcmalloc/vendor/src/base/linux_syscall_support.h 2021-09-23 12:41:53.540357702 -0400 +@@ -1485,7 +1485,7 @@ struct kernel_stat { + "d"(LSS_SYSCALL_ARG(parent_tidptr)), + "r"(LSS_SYSCALL_ARG(newtls)), + "r"(LSS_SYSCALL_ARG(child_tidptr)) +- : "rsp", "memory", "r8", "r10", "r11", "rcx"); ++ : "memory", "r8", "r10", "r11", "rcx"); + } + LSS_RETURN(int, __res); + } diff --git a/chromium-94.0.4606.54-remoting-nodestructor-fix.patch b/chromium-94.0.4606.54-remoting-nodestructor-fix.patch new file mode 100644 index 00000000..ce64c553 --- /dev/null +++ b/chromium-94.0.4606.54-remoting-nodestructor-fix.patch @@ -0,0 +1,22 @@ +diff -up chromium-94.0.4606.54/remoting/host/remote_open_url_client.cc.remoting-nodestructor-fix chromium-94.0.4606.54/remoting/host/remote_open_url_client.cc +diff -up chromium-94.0.4606.54/remoting/host/remote_open_url_client_delegate_linux.cc.remoting-nodestructor-fix chromium-94.0.4606.54/remoting/host/remote_open_url_client_delegate_linux.cc +--- chromium-94.0.4606.54/remoting/host/remote_open_url_client_delegate_linux.cc.remoting-nodestructor-fix 2021-09-24 11:02:02.662082902 -0400 ++++ chromium-94.0.4606.54/remoting/host/remote_open_url_client_delegate_linux.cc 2021-09-24 11:06:05.207472179 -0400 +@@ -47,7 +47,7 @@ void ShowMessageDialog(const std::string + } + + bool IsBrowserValid(const std::string& browser) { +- static const base::NoDestructor> invalid_browsers( ++ static const base::NoDestructor> invalid_browsers{ + { + // This is the chromoting forwarder itself. + "crd-url-forwarder.desktop", +@@ -55,7 +55,7 @@ bool IsBrowserValid(const std::string& b + // XFCE's forwarder. May potentially launch the chromoting forwarder + // recursively. + "xfce4-web-browser.desktop", +- }); ++ }}; + if (browser.empty()) { + return false; + } diff --git a/chromium-94.0.4606.54-webrtc-BUILD.gn-fix-multiple-defines.patch b/chromium-94.0.4606.54-webrtc-BUILD.gn-fix-multiple-defines.patch new file mode 100644 index 00000000..04ed84e5 --- /dev/null +++ b/chromium-94.0.4606.54-webrtc-BUILD.gn-fix-multiple-defines.patch @@ -0,0 +1,16 @@ +diff -up chromium-94.0.4606.54/third_party/webrtc/BUILD.gn.fix-multiple-define chromium-94.0.4606.54/third_party/webrtc/BUILD.gn +--- chromium-94.0.4606.54/third_party/webrtc/BUILD.gn.fix-multiple-define 2021-09-24 13:22:48.067565858 -0400 ++++ chromium-94.0.4606.54/third_party/webrtc/BUILD.gn 2021-09-24 13:23:10.163664830 -0400 +@@ -119,10 +119,10 @@ config("common_inherited_config") { + ldflags = [] + + if (rtc_enable_symbol_export || is_component_build) { +- defines = [ "WEBRTC_ENABLE_SYMBOL_EXPORT" ] ++ defines += [ "WEBRTC_ENABLE_SYMBOL_EXPORT" ] + } + if (rtc_enable_objc_symbol_export) { +- defines = [ "WEBRTC_ENABLE_OBJC_SYMBOL_EXPORT" ] ++ defines += [ "WEBRTC_ENABLE_OBJC_SYMBOL_EXPORT" ] + } + + if (build_with_mozilla) { diff --git a/chromium-94.0.4606.61-remoting-extra-qualification.patch b/chromium-94.0.4606.61-remoting-extra-qualification.patch new file mode 100644 index 00000000..2b647391 --- /dev/null +++ b/chromium-94.0.4606.61-remoting-extra-qualification.patch @@ -0,0 +1,12 @@ +diff -up chromium-94.0.4606.61/remoting/host/mojom/remoting_mojom_traits.h.extra-qualification chromium-94.0.4606.61/remoting/host/mojom/remoting_mojom_traits.h +--- chromium-94.0.4606.61/remoting/host/mojom/remoting_mojom_traits.h.extra-qualification 2021-09-25 01:48:28.812426004 +0000 ++++ chromium-94.0.4606.61/remoting/host/mojom/remoting_mojom_traits.h 2021-09-25 01:48:59.072267580 +0000 +@@ -17,7 +17,7 @@ + namespace mojo { + + template <> +-class mojo::StructTraits { + public: + static const std::string& mime_type( diff --git a/chromium.spec b/chromium.spec index 43dceefc..ac593e97 100644 --- a/chromium.spec +++ b/chromium.spec @@ -171,7 +171,8 @@ BuildRequires: libicu-devel >= 5.4 %global bundlelibwebp 0 %global bundlelibpng 0 %global bundlelibjpeg 0 -%global bundlefreetype 0 +# Needs FT_ClipBox which was implemented after 2.11.0. Should be able to set this back to 0 later. +%global bundlefreetype 1 %global bundlelibdrm 0 %global bundlefontconfig 0 %endif @@ -217,15 +218,15 @@ BuildRequires: libicu-devel >= 5.4 %global chromoting_client_id %nil %endif -%global majorversion 93 +%global majorversion 94 %if %{freeworld} Name: chromium%{chromium_channel}%{nsuffix} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.4577.82 -Release: 2%{?dist} +Version: %{majorversion}.0.4606.61 +Release: 1%{?dist} %if %{?freeworld} %if %{?shared} # chromium-libs-media-freeworld @@ -260,7 +261,7 @@ Patch7: chromium-71.0.3578.98-widevine-r3.patch # Disable fontconfig cache magic that breaks remoting Patch8: chromium-91.0.4472.77-disable-fontconfig-cache-magic.patch # drop rsp clobber, which breaks gcc9 (thanks to Jeff Law) -Patch9: chromium-78.0.3904.70-gcc9-drop-rsp-clobber.patch +Patch9: chromium-94.0.4606.54-gcc9-drop-rsp-clobber.patch # Try to load widevine from other places Patch10: chromium-92.0.4515.107-widevine-other-locations.patch # Tell bootstrap.py to always use the version of Python we specify @@ -289,9 +290,6 @@ Patch57: chromium-93.0.4577.63-missing-cstring.patch Patch58: chromium-53-ffmpeg-no-deprecation-errors.patch # https://github.com/stha09/chromium-patches/blob/master/chromium-91-libyuv-aarch64.patch Patch60: chromium-91-libyuv-aarch64.patch -# Update third_party/highway to 0.12.2 -# this is needed for sane arm/aarch64 -Patch61: chromium-92.0.4515.107-update-highway-0.12.2.patch # https://github.com/stha09/chromium-patches/blob/master/chromium-90-ruy-include.patch Patch62: chromium-90-ruy-include.patch # Extra CXXFLAGS for aarch64 @@ -308,9 +306,6 @@ Patch66: chromium-84.0.4147.125-remoting-cstring.patch Patch67: chromium-84.0.4147.125-i686-fix_textrels.patch # Work around binutils bug in aarch64 (F33+) Patch68: chromium-84.0.4147.125-aarch64-clearkeycdm-binutils-workaround.patch -# Fix sandbox code to properly handle the new way that glibc handles fstat in Fedora 34+ -# Thanks to Kevin Kofler for the fix. -Patch75: chromium-90.0.4430.72-fstatfix.patch # Rawhide (f35) glibc defines SIGSTKSZ as a long instead of a constant Patch76: chromium-92.0.4515.107-rawhide-gcc-std-max-fix.patch # Do not download proprietary widevine module in the background (thanks Debian) @@ -318,27 +313,16 @@ Patch79: chromium-93.0.4577.63-widevine-no-download.patch # Fix crashes with components/cast_* # Thanks to Gentoo Patch80: chromium-92.0.4515.107-EnumTable-crash.patch -# https://github.com/stha09/chromium-patches/blob/master/chromium-93-BluetoothLowEnergyScanFilter-include.patch -Patch81: chromium-93-BluetoothLowEnergyScanFilter-include.patch -# https://github.com/stha09/chromium-patches/blob/master/chromium-93-ClassProperty-include.patch -Patch82: chromium-93-ClassProperty-include.patch + +# https://github.com/stha09/chromium-patches/blob/master/chromium-94-ConversionStorageSql-lambda.patch +Patch81: chromium-94-ConversionStorageSql-lambda.patch +# https://github.com/stha09/chromium-patches/blob/master/chromium-94-CustomSpaces-include.patch +Patch82: chromium-94-CustomSpaces-include.patch # Fixes for python3 Patch83: chromium-92.0.4515.107-py3-fixes.patch # Clean up clang-format for python3 # thanks to Jon Nettleton Patch86: chromium-93.0.4577.63-clang-format.patch -# https://github.com/stha09/chromium-patches/blob/master/chromium-93-ContextSet-permissive.patch -Patch87: chromium-93-ContextSet-permissive.patch -# https://github.com/stha09/chromium-patches/blob/master/chromium-93-DevToolsEmbedderMessageDispatcher-include.patch -Patch88: chromium-93-DevToolsEmbedderMessageDispatcher-include.patch -# https://github.com/stha09/chromium-patches/blob/master/chromium-93-FormForest-constexpr.patch -Patch89: chromium-93-FormForest-constexpr.patch -# https://github.com/stha09/chromium-patches/blob/master/chromium-93-HashPasswordManager-include.patch -Patch90: chromium-93-HashPasswordManager-include.patch -# https://github.com/stha09/chromium-patches/blob/master/chromium-93-pdfium-include.patch -Patch91: chromium-93-pdfium-include.patch -# https://github.com/stha09/chromium-patches/blob/master/chromium-93-ScopedTestDialogAutoConfirm-include.patch -Patch92: chromium-93-ScopedTestDialogAutoConfirm-include.patch # In file included from ../../components/cast_channel/enum_table.cc:5: # ../../components/cast_channel/enum_table.h:359:18: error: 'vector' in namespace 'std' does not name a template type # 359 | const std::vector data_; @@ -346,12 +330,13 @@ Patch92: chromium-93-ScopedTestDialogAutoConfirm-include.patch # ../../components/cast_channel/enum_table.h:18:1: note: 'std::vector' is defined in header ''; did you forget to '#include '? Patch93: chromium-93.0.4577.63-vector-fix.patch # Fix NoDestructor issue with gcc -Patch94: chromium-93.0.4577.63-remoting-nodestructor-fix.patch +Patch94: chromium-94.0.4606.54-remoting-nodestructor-fix.patch # include full UrlResponseHead header Patch95: chromium-93.0.4577.63-mojo-header-fix.patch -# Fix against HarfBuzz v3 -# Thanks to Jan Beich @ FreeBSD -Patch96: chromium-93.0.4577.82-harfbuzz3.patch +# Fix multiple defines issue in webrtc/BUILD.gn +Patch96: chromium-94.0.4606.54-webrtc-BUILD.gn-fix-multiple-defines.patch +# Fix extra qualification error +Patch97: chromium-94.0.4606.61-remoting-extra-qualification.patch # Use lstdc++ on EPEL7 only @@ -770,7 +755,7 @@ Provides: bundled(fips181) = 2.2.3 Provides: bundled(fontconfig) = 2.12.6 %endif %if 0%{?bundlefreetype} -Provides: bundled(freetype) = 2.9.3 +Provides: bundled(freetype) = 2.11.0git %endif Provides: bundled(gperftools) = svn144 %if 0%{?bundleharfbuzz} @@ -1007,7 +992,6 @@ udev. %patch57 -p1 -b .missing-cstring %patch58 -p1 -b .ffmpeg-deprecations %patch60 -p1 -b .libyuv-aarch64 -%patch61 -p1 -b .update-highway-0.12.2 %patch62 -p1 -b .ruy-include %patch63 -p1 -b .aarch64-cxxflags-addition %patch64 -p1 -b .java-only-allowed @@ -1015,28 +999,20 @@ udev. %patch66 -p1 -b .remoting-cstring %patch67 -p1 -b .i686-textrels %patch68 -p1 -b .aarch64-clearkeycdm-binutils-workaround -%patch75 -p1 -b .fstatfix %if 0%{?fedora} >= 35 %patch76 -p1 -b .sigstkszfix %endif %patch79 -p1 -b .widevine-no-download %patch80 -p1 -b .EnumTable-crash -%patch81 -p1 -b .BluetoothLowEnergyScanFilter-include -%patch82 -p1 -b .ClassProperty-include +%patch81 -p1 -b .ConversionStorageSql-lambda-include +%patch82 -p1 -b .CustomSpaces-include %patch83 -p1 -b .py3fixes %patch86 -p1 -b .clang-format-py3 -%patch87 -p1 -b .ContextSet-permissive -%patch88 -p1 -b .DevToolsEmbedderMessageDispatcher-include -%patch89 -p1 -b .FormForest-constexpr -%patch90 -p1 -b .HashPasswordManager-include -%patch91 -p1 -b .pdfium-include -%patch92 -p1 -b .ScopedTestDialogAutoConfirm-include %patch93 -p1 -b .vector-fix %patch94 -p1 -b .remoting-nodestructor-fix %patch95 -p1 -b .mojo-header-fix -%if 0%{?fedora} >= 36 -%patch96 -p1 -b .hbfix -%endif +%patch96 -p1 -b .webrtc-BUILD.gn-fix-multiple-defines +%patch97 -p1 -b .remoting-extra-qualification # Fedora branded user agent %if 0%{?fedora} @@ -1175,7 +1151,7 @@ CHROMIUM_CORE_GN_DEFINES+=' google_api_key="%{api_key}"' %if %{userestrictedapikeys} CHROMIUM_CORE_GN_DEFINES+=' google_default_client_id="%{default_client_id}" google_default_client_secret="%{default_client_secret}"' %endif -CHROMIUM_CORE_GN_DEFINES+=' is_clang=false use_sysroot=false fieldtrial_testing_like_official_build=true use_lld=false rtc_enable_symbol_export=true' +CHROMIUM_CORE_GN_DEFINES+=' is_clang=false use_sysroot=false disable_fieldtrial_testing_config=true use_lld=false rtc_enable_symbol_export=true' %if %{use_gold} CHROMIUM_CORE_GN_DEFINES+=' use_gold=true' %else @@ -1335,6 +1311,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/devtools-frontend/src/front_end/third_party/marked' \ 'third_party/devtools-frontend/src/front_end/third_party/puppeteer' \ 'third_party/devtools-frontend/src/front_end/third_party/wasmparser' \ + 'third_party/devtools-frontend/src/test/unittests/front_end/third_party/i18n' \ 'third_party/dom_distiller_js' \ 'third_party/eigen3' \ 'third_party/emoji-segmenter' \ @@ -1733,7 +1710,7 @@ rm -rf %{buildroot} %endif cp -a chrome %{buildroot}%{chromium_path}/%{chromium_browser_channel} cp -a chrome_sandbox %{buildroot}%{chromium_path}/chrome-sandbox - cp -a crashpad_handler %{buildroot}%{chromium_path}/crashpad_handler + cp -a chrome_crashpad_handler %{buildroot}%{chromium_path}/chrome_crashpad_handler cp -a ../../chrome/app/resources/manpage.1.in %{buildroot}%{_mandir}/man1/%{chromium_browser_channel}.1 sed -i "s|@@PACKAGE@@|%{chromium_browser_channel}|g" %{buildroot}%{_mandir}/man1/%{chromium_browser_channel}.1 sed -i "s|@@MENUNAME@@|%{chromium_menu_name}|g" %{buildroot}%{_mandir}/man1/%{chromium_browser_channel}.1 @@ -1965,7 +1942,7 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %dir %{chromium_path} %{chromium_path}/*.bin %{chromium_path}/chrome_*.pak -%{chromium_path}/crashpad_handler +%{chromium_path}/chrome_crashpad_handler %{chromium_path}/resources.pak %{chromium_path}/icudtl.dat %{chromium_path}/%{chromium_browser_channel} @@ -2121,6 +2098,12 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Fri Sep 24 2021 Tom Callaway - 94.0.4606.61-1 +- update to 94.0.4606.61 + +* Thu Sep 23 2021 Tom Callaway - 94.0.4606.54-1 +- update to 94.0.4606.54 + * Mon Sep 20 2021 Tom Callaway - 93.0.4577.82-2 - add fix for harfbuzz v3 (thanks to Jan Beich @ FreeBSD) diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh index 518eb5e4..002dae90 100755 --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -79,6 +79,7 @@ header_files=" libavcodec/x86/inline_asm.h \ libavcodec/codec_par.h \ libavcodec/dct.h \ libavcodec/dct32.h \ + libavcodec/defs.h \ libavcodec/error_resilience.h \ libavcodec/fdctdsp.h \ libavcodec/fft.h \ diff --git a/sources b/sources index dfc9ddf5..e1d64f9f 100644 --- a/sources +++ b/sources @@ -21,4 +21,4 @@ SHA512 (NotoSansSymbols2-Regular.ttf) = 2644b42c3fdccfe12395f9b61553aced169a0f1d SHA512 (NotoSansTibetan-Regular.ttf) = fb5a48fcaea80eebe7d692f6fcf00d59d47658a358d0ec8e046fc559873f88bd595b2da474d2826abd9e9305f3741c69058d867b1e6048f37fe7d71b5d3af36a SHA512 (node-v12.22.6-linux-arm64.tar.xz) = 87ce5eb954deb1d0debe6fa02b28a3cc675e12fca1e51d44b123ab294aa39ce0c6b8ac9eae1e7a6e32673ea2c2d480651d9ba7eea73012f0529503eebe9eb34d SHA512 (node-v12.22.6-linux-x64.tar.xz) = e1b55c32343cb2ccc40d888c705414bebf9c46b02083d13731df79b1e79521b7277761f6bcca041e40e3a2e47c67bb8e7848aa2b919a9de5c2ebf62c4a9c7176 -SHA512 (chromium-93.0.4577.82-clean.tar.xz) = a304c47308d8694855b59d016d09cd265b453d466a0fe9c6bb24ef19654f8497b076b2948c085b37e85f1d436f416c5dcf91ba4160544b75262629aa29d07250 +SHA512 (chromium-94.0.4606.61-clean.tar.xz) = 376d619e4bc4d5a5641aaf22d855889465c9b8990dcbc83517548edc9ada2e7087b66e839090c82cbbe2d46c2e98dc7f4b6461390a1f0d1d298cc698d1736b5e