From be99293fa424e7512785559218bc435cee4c817d Mon Sep 17 00:00:00 2001 From: Jiri Vanek Date: Tue, 27 Feb 2024 14:48:01 +0100 Subject: [PATCH 01/99] Rebuilt for java-21-openjdk as system jdk https://fedoraproject.org/wiki/Changes/Java21 From f6f8cc4499fe1db39f59a3e792b88156168416cf Mon Sep 17 00:00:00 2001 From: Jiri Vanek Date: Sat, 2 Mar 2024 16:42:03 +0100 Subject: [PATCH 02/99] Rebuilt for java-21-openjdk as system jdk https://fedoraproject.org/wiki/Changes/Java21 From bf05a6d1c92d284ba533f38d690d23f234de1648 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Fri, 22 Mar 2024 14:10:18 +0100 Subject: [PATCH 03/99] Release 115.9.0 --- .gitignore | 2 ++ icecat-lang_download.sh | 2 +- icecat.spec | 2 +- sources | 4 ++-- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index c6b8353..7c9d2cb 100644 --- a/.gitignore +++ b/.gitignore @@ -243,3 +243,5 @@ /icecat-115.7.0-rh1.tar.bz2 /icecat-115.8.0-langpacks.tar.gz /icecat-115.8.0-rh1.tar.bz2 +/icecat-115.9.0-langpacks.tar.gz +/icecat-115.9.0-rh1.tar.bz2 diff --git a/icecat-lang_download.sh b/icecat-lang_download.sh index 70498c5..c1b0fc5 100755 --- a/icecat-lang_download.sh +++ b/icecat-lang_download.sh @@ -1,6 +1,6 @@ #!/bin/bash -VERSION=115.8.0 +VERSION=115.9.0 URL=https://ftp.mozilla.org/pub/firefox/releases/${VERSION}esr/linux-x86_64/xpi/ for u in $URL; do diff --git a/icecat.spec b/icecat.spec index acd76d9..02b442b 100644 --- a/icecat.spec +++ b/icecat.spec @@ -107,7 +107,7 @@ ExcludeArch: s390x Name: icecat Epoch: 2 -Version: 115.8.0 +Version: 115.9.0 Release: %autorelease -e %{redhat_ver} Summary: GNU version of Firefox browser diff --git a/sources b/sources index dcf9e9d..7c92e93 100644 --- a/sources +++ b/sources @@ -1,5 +1,5 @@ SHA512 (cbindgen-vendor.tar.xz) = 9cb2a3007939aa2eae5e94b1adf2040d1fdbee9e1ce4367175f79e716e6a02e976c4053452b93c9b8c12cd19ffc4c7cb8ab66b1e97b1a90a64dfbff92698c792 -SHA512 (icecat-115.8.0-langpacks.tar.gz) = 762d24628bc5edbdce807b2be5de6ec1cfbc984f290a6bf9b25421af57480350cb454345a4303614f752bf2cc48eb7653d28c626b2a4f071dfcab3d11042ef9e -SHA512 (icecat-115.8.0-rh1.tar.bz2) = 1ebd0791d54c7112263964d47a96b918728040cd04d39703f208c616b04fbaadc047f234ee2fc38c7b074e527a7014959b7280458796d60e1f8a5c80107a0505 +SHA512 (icecat-115.9.0-langpacks.tar.gz) = b427be4f3b213c5cf2162c5e8027bc3fd610a9fd34afa925f6cab876ae0e5fd9150af4e2f638636fc62f7f3f5fb6a0a1e74520452443950be90bd9386505e553 +SHA512 (icecat-115.9.0-rh1.tar.bz2) = 510da953c00c021e0617e15ea8cc31ee7b4a1336953b2b59d9dfb4b040df99d3d532a143d00a95f51aa6c6ec09599bc3ffb68fa9087c8d196d0c8ac79ba8193e SHA512 (icecat-COPYING-licensefiles.tar.gz) = ed541845170f1d209e322b0def3248d571e0c42c4a17c74e83197e743bd8a128a1475f5312d905c8e70d047eddeac17e604373892eb6d5f1720c5c361849c42c SHA512 (icecat.png) = a3cec16cb15a27c3c91b53e2c534e78b07911011ff1331e450c0baf8e13b76da7cea2a90e5d75191fa88cfbfd40a0a7f3e553e92b64d0043dadd5ad5edfdf81c From 331ec3a977d78c2fcb75393efba1c228e72151e9 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Fri, 22 Mar 2024 21:23:11 +0100 Subject: [PATCH 04/99] Update to cbindgen-0.26.0 --- icecat.spec | 10 ++++++---- sources | 2 +- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/icecat.spec b/icecat.spec index 02b442b..92bf0f6 100644 --- a/icecat.spec +++ b/icecat.spec @@ -18,6 +18,10 @@ ExcludeArch: %{arm} ExcludeArch: s390x %endif +# Bundled cbindgen makes build slow. +# Enable only if system cbindgen is not available. +%global use_bundled_cbindgen 1 + #################### ### Optimization ### @@ -94,9 +98,6 @@ ExcludeArch: s390x %global disable_elfhack 1 -# cbingen -%global use_bundled_cbindgen 1 - # Use clang? %global build_with_clang 0 @@ -515,7 +516,6 @@ find extensions/gnu -name cose.manifest -delete %build # cbindgen %if 0%{?use_bundled_cbindgen} - mkdir -p my_rust_vendor cd my_rust_vendor %{__tar} xf %{SOURCE17} @@ -531,6 +531,8 @@ EOL env CARGO_HOME=.cargo cargo install cbindgen export PATH=`pwd`/.cargo/bin:$PATH +%else +export CBINDGEN=/usr/bin/cbindgen %endif mkdir %{_buildrootdir}/bin || : diff --git a/sources b/sources index 7c92e93..c36cd04 100644 --- a/sources +++ b/sources @@ -1,4 +1,4 @@ -SHA512 (cbindgen-vendor.tar.xz) = 9cb2a3007939aa2eae5e94b1adf2040d1fdbee9e1ce4367175f79e716e6a02e976c4053452b93c9b8c12cd19ffc4c7cb8ab66b1e97b1a90a64dfbff92698c792 +SHA512 (cbindgen-vendor.tar.xz) = 6142d1b08e75ee39ca706b8c7ab9b2c6f8585bb375a3c4231481fa5d974e53cbcaa4940279678a9cf8e5a974050f30841d99ff63c1efa7a294fd6e156e9af443 SHA512 (icecat-115.9.0-langpacks.tar.gz) = b427be4f3b213c5cf2162c5e8027bc3fd610a9fd34afa925f6cab876ae0e5fd9150af4e2f638636fc62f7f3f5fb6a0a1e74520452443950be90bd9386505e553 SHA512 (icecat-115.9.0-rh1.tar.bz2) = 510da953c00c021e0617e15ea8cc31ee7b4a1336953b2b59d9dfb4b040df99d3d532a143d00a95f51aa6c6ec09599bc3ffb68fa9087c8d196d0c8ac79ba8193e SHA512 (icecat-COPYING-licensefiles.tar.gz) = ed541845170f1d209e322b0def3248d571e0c42c4a17c74e83197e743bd8a128a1475f5312d905c8e70d047eddeac17e604373892eb6d5f1720c5c361849c42c From e223a3cc93f6fd313857665c312a2a5ec1914cd0 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Wed, 10 Apr 2024 22:57:42 +0200 Subject: [PATCH 05/99] Debug build --- icecat.spec | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/icecat.spec b/icecat.spec index 92bf0f6..a8ceacc 100644 --- a/icecat.spec +++ b/icecat.spec @@ -1,6 +1,6 @@ ### Naming ### # Set to true if it's going to be submitted as update -%global release_build 1 +%global release_build 0 # Set new source-code build version # This tag indicates a new rebuild for Fedora @@ -14,9 +14,7 @@ ExcludeArch: %{arm} # Build is failing because of # include/mozilla/FloatingPoint.h:212:31: error: inlining failed in call to ‘always_inline’ ‘bool mozilla::IsNegativeZero(T) [with T = double]’: indirect function call with a yet undetermined callee -%if 0%{?fedora} ExcludeArch: s390x -%endif # Bundled cbindgen makes build slow. # Enable only if system cbindgen is not available. @@ -26,10 +24,10 @@ ExcludeArch: s390x ### Optimization ### # Builds for debugging -%global debug_build 0 +%global debug_build 1 # Downgrade optimization -%global less_optbuild 0 +%global less_optbuild 1 # Use mozilla hardening option? %global hardened_build 1 From 000866408200878042a9172965b53879f3ce18e8 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Wed, 17 Apr 2024 23:27:44 +0200 Subject: [PATCH 06/99] Release 115.10.0 --- .gitignore | 2 ++ icecat-lang_download.sh | 2 +- icecat.spec | 8 ++++---- sources | 4 ++-- 4 files changed, 9 insertions(+), 7 deletions(-) diff --git a/.gitignore b/.gitignore index 7c9d2cb..dd29aec 100644 --- a/.gitignore +++ b/.gitignore @@ -245,3 +245,5 @@ /icecat-115.8.0-rh1.tar.bz2 /icecat-115.9.0-langpacks.tar.gz /icecat-115.9.0-rh1.tar.bz2 +/icecat-115.10.0-langpacks.tar.gz +/icecat-115.10.0-rh1.tar.bz2 diff --git a/icecat-lang_download.sh b/icecat-lang_download.sh index c1b0fc5..5c0108c 100755 --- a/icecat-lang_download.sh +++ b/icecat-lang_download.sh @@ -1,6 +1,6 @@ #!/bin/bash -VERSION=115.9.0 +VERSION=115.10.0 URL=https://ftp.mozilla.org/pub/firefox/releases/${VERSION}esr/linux-x86_64/xpi/ for u in $URL; do diff --git a/icecat.spec b/icecat.spec index a8ceacc..07ef3b6 100644 --- a/icecat.spec +++ b/icecat.spec @@ -1,6 +1,6 @@ ### Naming ### # Set to true if it's going to be submitted as update -%global release_build 0 +%global release_build 1 # Set new source-code build version # This tag indicates a new rebuild for Fedora @@ -24,10 +24,10 @@ ExcludeArch: s390x ### Optimization ### # Builds for debugging -%global debug_build 1 +%global debug_build 0 # Downgrade optimization -%global less_optbuild 1 +%global less_optbuild 0 # Use mozilla hardening option? %global hardened_build 1 @@ -106,7 +106,7 @@ ExcludeArch: s390x Name: icecat Epoch: 2 -Version: 115.9.0 +Version: 115.10.0 Release: %autorelease -e %{redhat_ver} Summary: GNU version of Firefox browser diff --git a/sources b/sources index c36cd04..8d82209 100644 --- a/sources +++ b/sources @@ -1,5 +1,5 @@ SHA512 (cbindgen-vendor.tar.xz) = 6142d1b08e75ee39ca706b8c7ab9b2c6f8585bb375a3c4231481fa5d974e53cbcaa4940279678a9cf8e5a974050f30841d99ff63c1efa7a294fd6e156e9af443 -SHA512 (icecat-115.9.0-langpacks.tar.gz) = b427be4f3b213c5cf2162c5e8027bc3fd610a9fd34afa925f6cab876ae0e5fd9150af4e2f638636fc62f7f3f5fb6a0a1e74520452443950be90bd9386505e553 -SHA512 (icecat-115.9.0-rh1.tar.bz2) = 510da953c00c021e0617e15ea8cc31ee7b4a1336953b2b59d9dfb4b040df99d3d532a143d00a95f51aa6c6ec09599bc3ffb68fa9087c8d196d0c8ac79ba8193e +SHA512 (icecat-115.10.0-langpacks.tar.gz) = c779294970427f2a95e9744f90778808734550638433f07d954bc53186425d6d15cdaafd50dc4fde8210944aa30396ae0cdacd51b2d939176ca833f50732b0ef +SHA512 (icecat-115.10.0-rh1.tar.bz2) = 0187c919e795da8d9950fc67ac9919eb77d5e31a5121e95f03a29331e2e281731b12e6b9cd19f3ca4e8cd6a52fcbc288221ce09e78dcc2d02ae139e56250af44 SHA512 (icecat-COPYING-licensefiles.tar.gz) = ed541845170f1d209e322b0def3248d571e0c42c4a17c74e83197e743bd8a128a1475f5312d905c8e70d047eddeac17e604373892eb6d5f1720c5c361849c42c SHA512 (icecat.png) = a3cec16cb15a27c3c91b53e2c534e78b07911011ff1331e450c0baf8e13b76da7cea2a90e5d75191fa88cfbfd40a0a7f3e553e92b64d0043dadd5ad5edfdf81c From 8384f31f4f080471d9ce4193a6debe4efafd8298 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Wed, 24 Apr 2024 21:30:19 +0200 Subject: [PATCH 07/99] Rebuild in Fedora 40+ with clang --- icecat.spec | 27 ++++++++++++++++++++++++--- 1 file changed, 24 insertions(+), 3 deletions(-) diff --git a/icecat.spec b/icecat.spec index 07ef3b6..e4f7274 100644 --- a/icecat.spec +++ b/icecat.spec @@ -16,6 +16,11 @@ ExcludeArch: %{arm} # include/mozilla/FloatingPoint.h:212:31: error: inlining failed in call to ‘always_inline’ ‘bool mozilla::IsNegativeZero(T) [with T = double]’: indirect function call with a yet undetermined callee ExcludeArch: s390x + +# Excluded due to https://bugzilla.mozilla.org/show_bug.cgi?id=1792159 +# https://bugzilla.redhat.com/show_bug.cgi?id=2129720 +ExcludeArch: i686 + # Bundled cbindgen makes build slow. # Enable only if system cbindgen is not available. %global use_bundled_cbindgen 1 @@ -97,7 +102,11 @@ ExcludeArch: s390x %global disable_elfhack 1 # Use clang? +%if 0%{?fedora} > 39 +%global build_with_clang 1 +%else %global build_with_clang 0 +%endif # https://bugzilla.redhat.com/show_bug.cgi?id=1908792 # https://bugzilla.redhat.com/show_bug.cgi?id=2255254 @@ -268,12 +277,19 @@ BuildRequires: pulseaudio-libs-devel BuildRequires: yasm BuildRequires: llvm BuildRequires: llvm-devel -BuildRequires: clang -BuildRequires: clang-libs -BuildRequires: clang-devel %if 0%{?build_with_clang} +%if 0%{?fedora} >= 40 +BuildRequires: clang17 +BuildRequires: clang17-libs +BuildRequires: clang17-devel +%else +BuildRequires: clang +BuildRequires: clang-libs +BuildRequires: clang-devel +%endif BuildRequires: lld %endif +%endif BuildRequires: rust %if 0%{?pgo_wayland} BuildRequires: mutter @@ -485,7 +501,12 @@ echo "ac_add_options --with-l10n-base=$PWD/l10n" >> .mozconfig %endif # Clang +%if 0%{?fedora} >= 40 +echo "ac_add_options --with-clang-path=%{_bindir}/clang-17" >> .mozconfig +echo "ac_add_options --with-libclang-path=%{_libdir}llvm17/lib" >> .mozconfig +%else echo "ac_add_options --with-libclang-path=%{_libdir}" >> .mozconfig +%endif %ifarch s390x echo "ac_add_options --disable-jit" >> .mozconfig From 199a717b3cda25b3712e257b5bd9975761eb7d85 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Wed, 24 Apr 2024 21:34:07 +0200 Subject: [PATCH 08/99] Rebuild in Fedora 40+ with clang --- icecat.spec | 1 - 1 file changed, 1 deletion(-) diff --git a/icecat.spec b/icecat.spec index e4f7274..2ab9fab 100644 --- a/icecat.spec +++ b/icecat.spec @@ -289,7 +289,6 @@ BuildRequires: clang-devel %endif BuildRequires: lld %endif -%endif BuildRequires: rust %if 0%{?pgo_wayland} BuildRequires: mutter From 1f2f0134d4ec9e038b468be8d5775377c060a70b Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Wed, 24 Apr 2024 21:39:43 +0200 Subject: [PATCH 09/99] Fix conditional clang options --- icecat.spec | 2 ++ 1 file changed, 2 insertions(+) diff --git a/icecat.spec b/icecat.spec index 2ab9fab..f7f20e4 100644 --- a/icecat.spec +++ b/icecat.spec @@ -500,12 +500,14 @@ echo "ac_add_options --with-l10n-base=$PWD/l10n" >> .mozconfig %endif # Clang +%if 0%{?build_with_clang} %if 0%{?fedora} >= 40 echo "ac_add_options --with-clang-path=%{_bindir}/clang-17" >> .mozconfig echo "ac_add_options --with-libclang-path=%{_libdir}llvm17/lib" >> .mozconfig %else echo "ac_add_options --with-libclang-path=%{_libdir}" >> .mozconfig %endif +%endif %ifarch s390x echo "ac_add_options --disable-jit" >> .mozconfig From 1499cbc50f8d8ca433373fd762d34f715c1c560b Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Wed, 24 Apr 2024 22:05:40 +0200 Subject: [PATCH 10/99] Fix libdir typo --- icecat.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/icecat.spec b/icecat.spec index f7f20e4..e1d1645 100644 --- a/icecat.spec +++ b/icecat.spec @@ -503,7 +503,7 @@ echo "ac_add_options --with-l10n-base=$PWD/l10n" >> .mozconfig %if 0%{?build_with_clang} %if 0%{?fedora} >= 40 echo "ac_add_options --with-clang-path=%{_bindir}/clang-17" >> .mozconfig -echo "ac_add_options --with-libclang-path=%{_libdir}llvm17/lib" >> .mozconfig +echo "ac_add_options --with-libclang-path=%{_libdir}/llvm17/lib" >> .mozconfig %else echo "ac_add_options --with-libclang-path=%{_libdir}" >> .mozconfig %endif From 07431212fd22e1774920dbca07dfe97c59834144 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Wed, 15 May 2024 14:36:40 +0200 Subject: [PATCH 11/99] Release 115.11.0 | Exclude 32-bit architectures --- .gitignore | 2 + icecat-115.11.0-gfx-qcms.patch | 49 ++++++++++++++++++++++++ icecat-lang_download.sh | 2 +- icecat.spec | 70 +++++++--------------------------- sources | 6 +-- 5 files changed, 68 insertions(+), 61 deletions(-) create mode 100644 icecat-115.11.0-gfx-qcms.patch diff --git a/.gitignore b/.gitignore index dd29aec..e75e2b3 100644 --- a/.gitignore +++ b/.gitignore @@ -247,3 +247,5 @@ /icecat-115.9.0-rh1.tar.bz2 /icecat-115.10.0-langpacks.tar.gz /icecat-115.10.0-rh1.tar.bz2 +/icecat-115.11.0-langpacks.tar.gz +/icecat-115.11.0-rh1.tar.bz2 diff --git a/icecat-115.11.0-gfx-qcms.patch b/icecat-115.11.0-gfx-qcms.patch new file mode 100644 index 0000000..b4e0207 --- /dev/null +++ b/icecat-115.11.0-gfx-qcms.patch @@ -0,0 +1,49 @@ +diff -up firefox-115.11.0/Cargo.lock.gfx-qcms firefox-115.11.0/Cargo.lock +--- firefox-115.11.0/Cargo.lock.gfx-qcms 2024-05-13 18:22:10.848690842 +0200 ++++ firefox-115.11.0/Cargo.lock 2024-05-13 18:26:01.991124505 +0200 +@@ -4276,6 +4276,7 @@ name = "qcms" + version = "0.2.0" + dependencies = [ + "libc", ++ "version_check", + ] + + [[package]] +diff -up firefox-115.11.0/gfx/qcms/build.rs.gfx-qcms firefox-115.11.0/gfx/qcms/build.rs +--- firefox-115.11.0/gfx/qcms/build.rs.gfx-qcms 2024-05-13 18:22:10.848690842 +0200 ++++ firefox-115.11.0/gfx/qcms/build.rs 2024-05-13 18:22:10.848690842 +0200 +@@ -0,0 +1,7 @@ ++extern crate version_check as rustc; ++ ++fn main() { ++ if rustc::is_min_version("1.78.0").unwrap_or(false) { ++ println!("cargo:rustc-cfg=stdsimd_split"); ++ } ++} +diff -up firefox-115.11.0/gfx/qcms/Cargo.toml.gfx-qcms firefox-115.11.0/gfx/qcms/Cargo.toml +--- firefox-115.11.0/gfx/qcms/Cargo.toml.gfx-qcms 2024-05-06 20:27:35.000000000 +0200 ++++ firefox-115.11.0/gfx/qcms/Cargo.toml 2024-05-13 18:22:10.848690842 +0200 +@@ -20,3 +20,6 @@ cmyk = [] + + [dependencies] + libc = {version = "0.2", optional = true } ++ ++[build-dependencies] ++version_check = "0.9" +diff -up firefox-115.11.0/gfx/qcms/src/lib.rs.gfx-qcms firefox-115.11.0/gfx/qcms/src/lib.rs +--- firefox-115.11.0/gfx/qcms/src/lib.rs.gfx-qcms 2024-05-06 20:27:35.000000000 +0200 ++++ firefox-115.11.0/gfx/qcms/src/lib.rs 2024-05-13 18:22:10.848690842 +0200 +@@ -7,9 +7,11 @@ + #![allow(non_upper_case_globals)] + // These are needed for the neon SIMD code and can be removed once the MSRV supports the + // instrinsics we use +-#![cfg_attr(feature = "neon", feature(stdsimd))] ++#![cfg_attr(all(stdsimd_split, target_arch = "arm", feature = "neon"), feature(stdarch_arm_neon_intrinsics))] ++#![cfg_attr(all(stdsimd_split, target_arch = "arm", feature = "neon"), feature(stdarch_arm_feature_detection))] ++#![cfg_attr(all(not(stdsimd_split), target_arch = "arm", feature = "neon"), feature(stdsimd))] + #![cfg_attr( +- feature = "neon", ++ all(target_arch = "arm", feature = "neon"), + feature(arm_target_feature, raw_ref_op) + + )] diff --git a/icecat-lang_download.sh b/icecat-lang_download.sh index 5c0108c..8885f64 100755 --- a/icecat-lang_download.sh +++ b/icecat-lang_download.sh @@ -1,6 +1,6 @@ #!/bin/bash -VERSION=115.10.0 +VERSION=115.11.0 URL=https://ftp.mozilla.org/pub/firefox/releases/${VERSION}esr/linux-x86_64/xpi/ for u in $URL; do diff --git a/icecat.spec b/icecat.spec index e1d1645..dbddd01 100644 --- a/icecat.spec +++ b/icecat.spec @@ -6,20 +6,11 @@ # This tag indicates a new rebuild for Fedora %global redhat_ver rh1 -# Exclude ARM for the following error: -# terminate called after throwing an instance of 'std::bad_alloc' -# what(): std::bad_alloc -# error: could not compile `gkrust` -ExcludeArch: %{arm} - # Build is failing because of # include/mozilla/FloatingPoint.h:212:31: error: inlining failed in call to ‘always_inline’ ‘bool mozilla::IsNegativeZero(T) [with T = double]’: indirect function call with a yet undetermined callee -ExcludeArch: s390x +#ExcludeArch: s390x - -# Excluded due to https://bugzilla.mozilla.org/show_bug.cgi?id=1792159 -# https://bugzilla.redhat.com/show_bug.cgi?id=2129720 -ExcludeArch: i686 +ExcludeArch: %{ix86} %{arm} # Bundled cbindgen makes build slow. # Enable only if system cbindgen is not available. @@ -72,7 +63,7 @@ ExcludeArch: i686 %global toolkit_gtk3 1 # Big endian platforms -%ifarch ppc64 s390x +%ifarch %{power64} s390x # Javascript Intl API is not supported on big endian platforms right now: # https://bugzilla.mozilla.org/show_bug.cgi?id=1322212 %global big_endian 1 @@ -115,7 +106,7 @@ ExcludeArch: i686 Name: icecat Epoch: 2 -Version: 115.10.0 +Version: 115.11.0 Release: %autorelease -e %{redhat_ver} Summary: GNU version of Firefox browser @@ -178,6 +169,7 @@ Patch40: build-aarch64-skia.patch Patch41: build-disable-elfhack.patch Patch44: build-arm-libopus.patch Patch54: mozilla-1669639.patch +Patch55: %{name}-115.11.0-gfx-qcms.patch # Fedora specific patches Patch219: rhbz-1173156.patch @@ -370,7 +362,7 @@ tar -xf %{SOURCE5} %patch -P 1 -p 1 -b .fix_addon_installation %patch -P 2 -p 1 -b .commasplit -%ifarch s390 +%ifarch s390x %patch -P 5 -p 1 -b .rhbz-1219542-s390 %endif @@ -385,16 +377,13 @@ tar -xf %{SOURCE5} %endif %patch -P 224 -p 1 -b .glibcxx -# ARM run-time patch -%ifarch aarch64 +# ARM64 +%ifarch %{arm64} %patch -P 40 -p 1 -b .aarch64-skia +%patch -P 55 -p 1 -b .backup %patch -P 226 -p 1 -b .1354671 %endif -%ifarch %{arm} -%patch -P 44 -p 1 -b .build-arm-libopus -%endif - %patch -P 402 -p 1 -b .1196777 %ifarch %{power64} %patch -P 423 -p 1 -b .1512162 @@ -425,9 +414,7 @@ echo "ac_add_options --disable-webrtc" >> .mozconfig # Hide DRM Content option # This option does not work on other architectures -%ifarch x86_64 %{ix86} echo "ac_add_options --disable-eme" >> .mozconfig -%endif %if %{with pulseaudio} echo "ac_add_options --enable-pulseaudio" >> .mozconfig @@ -461,16 +448,7 @@ echo "ac_add_options --without-system-libvpx" >> .mozconfig echo "ac_add_options --with-system-jpeg" >> .mozconfig echo "ac_add_options --enable-ffmpeg" >> .mozconfig - -# This option works on these architectures only -%ifarch %{arm} -echo "ac_add_options --disable-elf-hack" >> .mozconfig -echo "ac_add_options --disable-av1" >> .mozconfig -echo 'export NEON_FLAGS=-mfpu=vfpv3-d16' >> .mozconfig -%endif -%ifnarch %{arm} echo "ac_add_options --enable-av1" >> .mozconfig -%endif %if 0%{?debug_build} echo "ac_add_options --enable-debug" >> .mozconfig @@ -478,7 +456,7 @@ echo "ac_add_options --disable-optimize" >> .mozconfig echo "ac_add_options --enable-rust-debug" >> .mozconfig %else %global optimize_flags "none" -%ifarch %{arm} s390x +%ifarch s390x # ARMv7 need that (rhbz#1426850) %define optimize_flags " -fno-schedule-insns" %endif @@ -590,40 +568,18 @@ MOZ_OPT_FLAGS=$(echo "$MOZ_OPT_FLAGS" | %{__sed} -e 's/-g/-g1/') export MOZ_DEBUG_FLAGS=" " %endif -%ifarch %{arm} %{ix86} -MOZ_OPT_FLAGS=$(echo "$MOZ_OPT_FLAGS" | %{__sed} -e 's/-g/-g0/') -# If MOZ_DEBUG_FLAGS is empty, firefox's build will default it to "-g" which -# overrides the -g1 from line above and breaks building on s390 -# (OOM when linking, rhbz#1238225) -export MOZ_DEBUG_FLAGS=" " -%endif - # We don't wantfirefox to use CK_GCM_PARAMS_V3 in nss MOZ_OPT_FLAGS="$MOZ_OPT_FLAGS -DNSS_PKCS11_3_0_STRICT" %if !0%{?build_with_clang} -%ifarch s390x %{power64} aarch64 %{ix86} +%ifarch s390x %{power64} %{arm64} MOZ_LINK_FLAGS="-Wl,--no-keep-memory -Wl,--reduce-memory-overheads -Wl,--print-memory-usage" %endif -%ifarch %{arm} -MOZ_LINK_FLAGS="-Wl,--no-keep-memory" -echo "ac_add_options --enable-linker=gold" >> .mozconfig %endif -%endif -%ifarch %{arm} %{ix86} s390x +%ifarch s390x export RUSTFLAGS="-Cdebuginfo=0" %endif -%ifarch %{arm} -# disable hard-coded LTO due to RAM constraints -sed -i '/cargo_rustc_flags += -Clto/d' config/makefiles/rust.mk -sed -i '/RUSTFLAGS += -Cembed-bitcode=yes/d' config/makefiles/rust.mk -sed -i 's/codegen-units=1/codegen-units=16/' config/makefiles/rust.mk - -# make sure "-g0" is the last flag so there's no debug info -MOZ_OPT_FLAGS="$MOZ_OPT_FLAGS -g0" -%endif - export CFLAGS=$MOZ_OPT_FLAGS export CXXFLAGS="$MOZ_OPT_FLAGS -fpermissive" export LDFLAGS=$MOZ_LINK_FLAGS @@ -654,7 +610,7 @@ MOZ_SMP_FLAGS=-j1 MOZ_SMP_FLAGS=-j1 # On x86_64 architectures, Mozilla can build up to 4 jobs at once in parallel, # however builds tend to fail on other arches when building in parallel. -%ifarch %{ix86} s390x %{arm} aarch64 +%ifarch s390x %{arm64} [ -z "$RPM_BUILD_NCPUS" ] && \ RPM_BUILD_NCPUS="`/usr/bin/getconf _NPROCESSORS_ONLN`" [ "$RPM_BUILD_NCPUS" -ge 2 ] && MOZ_SMP_FLAGS=-j2 diff --git a/sources b/sources index 8d82209..dffdebf 100644 --- a/sources +++ b/sources @@ -1,5 +1,5 @@ -SHA512 (cbindgen-vendor.tar.xz) = 6142d1b08e75ee39ca706b8c7ab9b2c6f8585bb375a3c4231481fa5d974e53cbcaa4940279678a9cf8e5a974050f30841d99ff63c1efa7a294fd6e156e9af443 -SHA512 (icecat-115.10.0-langpacks.tar.gz) = c779294970427f2a95e9744f90778808734550638433f07d954bc53186425d6d15cdaafd50dc4fde8210944aa30396ae0cdacd51b2d939176ca833f50732b0ef -SHA512 (icecat-115.10.0-rh1.tar.bz2) = 0187c919e795da8d9950fc67ac9919eb77d5e31a5121e95f03a29331e2e281731b12e6b9cd19f3ca4e8cd6a52fcbc288221ce09e78dcc2d02ae139e56250af44 +SHA512 (cbindgen-vendor.tar.xz) = da016ecd9ac6dd3ecd1a65b80c2728db59bccd9ca5e6b54888f02398e3f97a90d1bae3bef85f0eb0950c07734bf3e191fb679fc39527205ba0520009ca4769d2 +SHA512 (icecat-115.11.0-langpacks.tar.gz) = 6074e27182c09dcab4f286e706303e0f2cc351bbfb7dc968fe4ed8acc736847135c270f9135e3d3d9e05b089734f3ce3b138018f7a9b6c3a2e4ce6f15eaa2ad3 +SHA512 (icecat-115.11.0-rh1.tar.bz2) = 595313e556ebed011ab26ee30dbe31956d69c8893f26369524d17bf67b7253cd46af4883bad52a43b1bf2ad1ef890d4c16239ccbc063a60ef1ab1b3f183c42dd SHA512 (icecat-COPYING-licensefiles.tar.gz) = ed541845170f1d209e322b0def3248d571e0c42c4a17c74e83197e743bd8a128a1475f5312d905c8e70d047eddeac17e604373892eb6d5f1720c5c361849c42c SHA512 (icecat.png) = a3cec16cb15a27c3c91b53e2c534e78b07911011ff1331e450c0baf8e13b76da7cea2a90e5d75191fa88cfbfd40a0a7f3e553e92b64d0043dadd5ad5edfdf81c From 00bb264463a8966d7aac563925d221c1b30cbae0 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Wed, 15 May 2024 15:44:39 +0200 Subject: [PATCH 12/99] Rename the file .cargo/config --- icecat.spec | 5 +++++ sources | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/icecat.spec b/icecat.spec index dbddd01..8cffe55 100644 --- a/icecat.spec +++ b/icecat.spec @@ -527,6 +527,11 @@ replace-with = "vendored-sources" directory = "`pwd`/my_rust_vendor" EOL +# note: if you need to support cargo 1.38 or earlier, you can symlink `config` to `config.toml` +pushd .cargo +mv config config.toml +popd + env CARGO_HOME=.cargo cargo install cbindgen export PATH=`pwd`/.cargo/bin:$PATH %else diff --git a/sources b/sources index dffdebf..82554e6 100644 --- a/sources +++ b/sources @@ -1,4 +1,4 @@ -SHA512 (cbindgen-vendor.tar.xz) = da016ecd9ac6dd3ecd1a65b80c2728db59bccd9ca5e6b54888f02398e3f97a90d1bae3bef85f0eb0950c07734bf3e191fb679fc39527205ba0520009ca4769d2 +SHA512 (cbindgen-vendor.tar.xz) = e229f15cb3d9213413ea4793478458887167f9c78943a6fd0e0c967a78c45457ffb8c4d933096b338e1dcf9a3c81931b6eaa4fdfb46d342ac1f3c251c99cd0d5 SHA512 (icecat-115.11.0-langpacks.tar.gz) = 6074e27182c09dcab4f286e706303e0f2cc351bbfb7dc968fe4ed8acc736847135c270f9135e3d3d9e05b089734f3ce3b138018f7a9b6c3a2e4ce6f15eaa2ad3 SHA512 (icecat-115.11.0-rh1.tar.bz2) = 595313e556ebed011ab26ee30dbe31956d69c8893f26369524d17bf67b7253cd46af4883bad52a43b1bf2ad1ef890d4c16239ccbc063a60ef1ab1b3f183c42dd SHA512 (icecat-COPYING-licensefiles.tar.gz) = ed541845170f1d209e322b0def3248d571e0c42c4a17c74e83197e743bd8a128a1475f5312d905c8e70d047eddeac17e604373892eb6d5f1720c5c361849c42c From 84112ccf17880ab52f796128f6755bfbe768412c Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Wed, 15 May 2024 18:44:33 +0200 Subject: [PATCH 13/99] Fix disable-eme option --- icecat.spec | 2 ++ 1 file changed, 2 insertions(+) diff --git a/icecat.spec b/icecat.spec index 8cffe55..3b36021 100644 --- a/icecat.spec +++ b/icecat.spec @@ -414,7 +414,9 @@ echo "ac_add_options --disable-webrtc" >> .mozconfig # Hide DRM Content option # This option does not work on other architectures +%ifarch x86_64 echo "ac_add_options --disable-eme" >> .mozconfig +%endif %if %{with pulseaudio} echo "ac_add_options --enable-pulseaudio" >> .mozconfig From 0d3a82d7834536a0ea4d424484e57d6aeb81d64a Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Fri, 17 May 2024 22:07:03 +0200 Subject: [PATCH 14/99] Use always Patch55 --- icecat.spec | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/icecat.spec b/icecat.spec index 3b36021..4eb30f0 100644 --- a/icecat.spec +++ b/icecat.spec @@ -380,10 +380,11 @@ tar -xf %{SOURCE5} # ARM64 %ifarch %{arm64} %patch -P 40 -p 1 -b .aarch64-skia -%patch -P 55 -p 1 -b .backup %patch -P 226 -p 1 -b .1354671 %endif +%patch -P 55 -p 1 -b .backup + %patch -P 402 -p 1 -b .1196777 %ifarch %{power64} %patch -P 423 -p 1 -b .1512162 From 397e2ef82188e135d0a299a887d2127d46b5751d Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Sat, 18 May 2024 17:39:20 +0200 Subject: [PATCH 15/99] Use clang on Fedora 40+ only --- icecat.spec | 6 ------ 1 file changed, 6 deletions(-) diff --git a/icecat.spec b/icecat.spec index 4eb30f0..332b008 100644 --- a/icecat.spec +++ b/icecat.spec @@ -270,15 +270,9 @@ BuildRequires: yasm BuildRequires: llvm BuildRequires: llvm-devel %if 0%{?build_with_clang} -%if 0%{?fedora} >= 40 BuildRequires: clang17 BuildRequires: clang17-libs BuildRequires: clang17-devel -%else -BuildRequires: clang -BuildRequires: clang-libs -BuildRequires: clang-devel -%endif BuildRequires: lld %endif BuildRequires: rust From 49a86580997155d35a5cbfab30046b491c11666f Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Sat, 18 May 2024 18:33:53 +0200 Subject: [PATCH 16/99] Fix clang path in Fedora 39 --- icecat.spec | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/icecat.spec b/icecat.spec index 332b008..07bd2cf 100644 --- a/icecat.spec +++ b/icecat.spec @@ -273,7 +273,7 @@ BuildRequires: llvm-devel BuildRequires: clang17 BuildRequires: clang17-libs BuildRequires: clang17-devel -BuildRequires: lld +BuildRequires: lld %endif BuildRequires: rust %if 0%{?pgo_wayland} @@ -476,12 +476,8 @@ echo "ac_add_options --with-l10n-base=$PWD/l10n" >> .mozconfig # Clang %if 0%{?build_with_clang} -%if 0%{?fedora} >= 40 echo "ac_add_options --with-clang-path=%{_bindir}/clang-17" >> .mozconfig echo "ac_add_options --with-libclang-path=%{_libdir}/llvm17/lib" >> .mozconfig -%else -echo "ac_add_options --with-libclang-path=%{_libdir}" >> .mozconfig -%endif %endif %ifarch s390x From 654d5d10277c2c89f54607919a8d3b10abca78a7 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Sun, 19 May 2024 00:24:38 +0200 Subject: [PATCH 17/99] Install clang BR --- icecat.spec | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/icecat.spec b/icecat.spec index 07bd2cf..e796aa9 100644 --- a/icecat.spec +++ b/icecat.spec @@ -274,6 +274,10 @@ BuildRequires: clang17 BuildRequires: clang17-libs BuildRequires: clang17-devel BuildRequires: lld +%else +BuildRequires: clang +BuildRequires: clang-libs +BuildRequires: clang-devel %endif BuildRequires: rust %if 0%{?pgo_wayland} From a075ca1fec9b9c4ac7343bb79a3ba58b17c91429 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Sun, 19 May 2024 00:49:55 +0200 Subject: [PATCH 18/99] Fix clang path in no-clang builds --- icecat.spec | 2 ++ 1 file changed, 2 insertions(+) diff --git a/icecat.spec b/icecat.spec index e796aa9..d9a6728 100644 --- a/icecat.spec +++ b/icecat.spec @@ -482,6 +482,8 @@ echo "ac_add_options --with-l10n-base=$PWD/l10n" >> .mozconfig %if 0%{?build_with_clang} echo "ac_add_options --with-clang-path=%{_bindir}/clang-17" >> .mozconfig echo "ac_add_options --with-libclang-path=%{_libdir}/llvm17/lib" >> .mozconfig +%else +echo "ac_add_options --with-libclang-path=%{_libdir}" >> .mozconfig %endif %ifarch s390x From 94f70e9d2babfc5302f9882fb40fc3467cc7ab71 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Tue, 11 Jun 2024 22:26:02 +0200 Subject: [PATCH 19/99] Release 115.2.0 --- .gitignore | 2 ++ icecat-lang_download.sh | 2 +- icecat.spec | 4 ++-- sources | 4 ++-- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/.gitignore b/.gitignore index e75e2b3..8d20c51 100644 --- a/.gitignore +++ b/.gitignore @@ -249,3 +249,5 @@ /icecat-115.10.0-rh1.tar.bz2 /icecat-115.11.0-langpacks.tar.gz /icecat-115.11.0-rh1.tar.bz2 +/icecat-115.12.0-langpacks.tar.gz +/icecat-115.12.0-rh1.tar.bz2 diff --git a/icecat-lang_download.sh b/icecat-lang_download.sh index 8885f64..42bb997 100755 --- a/icecat-lang_download.sh +++ b/icecat-lang_download.sh @@ -1,6 +1,6 @@ #!/bin/bash -VERSION=115.11.0 +VERSION=115.12.0 URL=https://ftp.mozilla.org/pub/firefox/releases/${VERSION}esr/linux-x86_64/xpi/ for u in $URL; do diff --git a/icecat.spec b/icecat.spec index d9a6728..b0d7b7f 100644 --- a/icecat.spec +++ b/icecat.spec @@ -77,7 +77,7 @@ ExcludeArch: %{ix86} %{arm} %if %{?system_nss} %global nspr_version 4.32 %global nspr_build_version %{nspr_version} -%global nss_version 3.88 +%global nss_version 3.100 %global nss_build_version %{nss_version} %endif @@ -106,7 +106,7 @@ ExcludeArch: %{ix86} %{arm} Name: icecat Epoch: 2 -Version: 115.11.0 +Version: 115.12.0 Release: %autorelease -e %{redhat_ver} Summary: GNU version of Firefox browser diff --git a/sources b/sources index 82554e6..44b7f0c 100644 --- a/sources +++ b/sources @@ -1,5 +1,5 @@ SHA512 (cbindgen-vendor.tar.xz) = e229f15cb3d9213413ea4793478458887167f9c78943a6fd0e0c967a78c45457ffb8c4d933096b338e1dcf9a3c81931b6eaa4fdfb46d342ac1f3c251c99cd0d5 -SHA512 (icecat-115.11.0-langpacks.tar.gz) = 6074e27182c09dcab4f286e706303e0f2cc351bbfb7dc968fe4ed8acc736847135c270f9135e3d3d9e05b089734f3ce3b138018f7a9b6c3a2e4ce6f15eaa2ad3 -SHA512 (icecat-115.11.0-rh1.tar.bz2) = 595313e556ebed011ab26ee30dbe31956d69c8893f26369524d17bf67b7253cd46af4883bad52a43b1bf2ad1ef890d4c16239ccbc063a60ef1ab1b3f183c42dd +SHA512 (icecat-115.12.0-langpacks.tar.gz) = 9394d004da6d08c2d68727b795bdb7db44624837502040a1cf67e1fbea6b578dd0847c6f0775efd9f1b459cb86490d45510885d9edd983689ba59a83e9ca5611 +SHA512 (icecat-115.12.0-rh1.tar.bz2) = 05993db25741d18c696ddefba7e533460e87c48b2d90771aacadf4aba5d1dd365994f9c5be82e481690380f344008150f87258a0d052b55e7bcb8f4840732d29 SHA512 (icecat-COPYING-licensefiles.tar.gz) = ed541845170f1d209e322b0def3248d571e0c42c4a17c74e83197e743bd8a128a1475f5312d905c8e70d047eddeac17e604373892eb6d5f1720c5c361849c42c SHA512 (icecat.png) = a3cec16cb15a27c3c91b53e2c534e78b07911011ff1331e450c0baf8e13b76da7cea2a90e5d75191fa88cfbfd40a0a7f3e553e92b64d0043dadd5ad5edfdf81c From f040fc0ab8f25cc0167fc1f99cb7ad44313479ea Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Tue, 11 Jun 2024 22:27:42 +0200 Subject: [PATCH 20/99] Remove obsolete patch --- icecat-115.11.0-gfx-qcms.patch | 49 ---------------------------------- icecat.spec | 3 --- 2 files changed, 52 deletions(-) delete mode 100644 icecat-115.11.0-gfx-qcms.patch diff --git a/icecat-115.11.0-gfx-qcms.patch b/icecat-115.11.0-gfx-qcms.patch deleted file mode 100644 index b4e0207..0000000 --- a/icecat-115.11.0-gfx-qcms.patch +++ /dev/null @@ -1,49 +0,0 @@ -diff -up firefox-115.11.0/Cargo.lock.gfx-qcms firefox-115.11.0/Cargo.lock ---- firefox-115.11.0/Cargo.lock.gfx-qcms 2024-05-13 18:22:10.848690842 +0200 -+++ firefox-115.11.0/Cargo.lock 2024-05-13 18:26:01.991124505 +0200 -@@ -4276,6 +4276,7 @@ name = "qcms" - version = "0.2.0" - dependencies = [ - "libc", -+ "version_check", - ] - - [[package]] -diff -up firefox-115.11.0/gfx/qcms/build.rs.gfx-qcms firefox-115.11.0/gfx/qcms/build.rs ---- firefox-115.11.0/gfx/qcms/build.rs.gfx-qcms 2024-05-13 18:22:10.848690842 +0200 -+++ firefox-115.11.0/gfx/qcms/build.rs 2024-05-13 18:22:10.848690842 +0200 -@@ -0,0 +1,7 @@ -+extern crate version_check as rustc; -+ -+fn main() { -+ if rustc::is_min_version("1.78.0").unwrap_or(false) { -+ println!("cargo:rustc-cfg=stdsimd_split"); -+ } -+} -diff -up firefox-115.11.0/gfx/qcms/Cargo.toml.gfx-qcms firefox-115.11.0/gfx/qcms/Cargo.toml ---- firefox-115.11.0/gfx/qcms/Cargo.toml.gfx-qcms 2024-05-06 20:27:35.000000000 +0200 -+++ firefox-115.11.0/gfx/qcms/Cargo.toml 2024-05-13 18:22:10.848690842 +0200 -@@ -20,3 +20,6 @@ cmyk = [] - - [dependencies] - libc = {version = "0.2", optional = true } -+ -+[build-dependencies] -+version_check = "0.9" -diff -up firefox-115.11.0/gfx/qcms/src/lib.rs.gfx-qcms firefox-115.11.0/gfx/qcms/src/lib.rs ---- firefox-115.11.0/gfx/qcms/src/lib.rs.gfx-qcms 2024-05-06 20:27:35.000000000 +0200 -+++ firefox-115.11.0/gfx/qcms/src/lib.rs 2024-05-13 18:22:10.848690842 +0200 -@@ -7,9 +7,11 @@ - #![allow(non_upper_case_globals)] - // These are needed for the neon SIMD code and can be removed once the MSRV supports the - // instrinsics we use --#![cfg_attr(feature = "neon", feature(stdsimd))] -+#![cfg_attr(all(stdsimd_split, target_arch = "arm", feature = "neon"), feature(stdarch_arm_neon_intrinsics))] -+#![cfg_attr(all(stdsimd_split, target_arch = "arm", feature = "neon"), feature(stdarch_arm_feature_detection))] -+#![cfg_attr(all(not(stdsimd_split), target_arch = "arm", feature = "neon"), feature(stdsimd))] - #![cfg_attr( -- feature = "neon", -+ all(target_arch = "arm", feature = "neon"), - feature(arm_target_feature, raw_ref_op) - - )] diff --git a/icecat.spec b/icecat.spec index b0d7b7f..52c21ef 100644 --- a/icecat.spec +++ b/icecat.spec @@ -169,7 +169,6 @@ Patch40: build-aarch64-skia.patch Patch41: build-disable-elfhack.patch Patch44: build-arm-libopus.patch Patch54: mozilla-1669639.patch -Patch55: %{name}-115.11.0-gfx-qcms.patch # Fedora specific patches Patch219: rhbz-1173156.patch @@ -381,8 +380,6 @@ tar -xf %{SOURCE5} %patch -P 226 -p 1 -b .1354671 %endif -%patch -P 55 -p 1 -b .backup - %patch -P 402 -p 1 -b .1196777 %ifarch %{power64} %patch -P 423 -p 1 -b .1512162 From 95b0a6923fd2da94453387e8d5f6b17d1e16b49e Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Wed, 12 Jun 2024 22:16:17 +0200 Subject: [PATCH 21/99] Fix NSS version for Fedora 39 --- icecat.spec | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/icecat.spec b/icecat.spec index 52c21ef..e3315e2 100644 --- a/icecat.spec +++ b/icecat.spec @@ -77,7 +77,11 @@ ExcludeArch: %{ix86} %{arm} %if %{?system_nss} %global nspr_version 4.32 %global nspr_build_version %{nspr_version} +%if 0%{?fedora} > 39 %global nss_version 3.100 +%else +%global nss_version 3.99 +%endif %global nss_build_version %{nss_version} %endif From 21f3241219e9d6495720bdd6cebe93f33d0673b2 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Tue, 9 Jul 2024 23:42:56 +0200 Subject: [PATCH 22/99] Release 115.13.0 --- .gitignore | 2 ++ icecat-lang_download.sh | 2 +- icecat.spec | 2 +- sources | 4 ++-- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 8d20c51..3c728ff 100644 --- a/.gitignore +++ b/.gitignore @@ -251,3 +251,5 @@ /icecat-115.11.0-rh1.tar.bz2 /icecat-115.12.0-langpacks.tar.gz /icecat-115.12.0-rh1.tar.bz2 +/icecat-115.13.0-langpacks.tar.gz +/icecat-115.13.0-rh1.tar.bz2 diff --git a/icecat-lang_download.sh b/icecat-lang_download.sh index 42bb997..efe7632 100755 --- a/icecat-lang_download.sh +++ b/icecat-lang_download.sh @@ -1,6 +1,6 @@ #!/bin/bash -VERSION=115.12.0 +VERSION=115.13.0 URL=https://ftp.mozilla.org/pub/firefox/releases/${VERSION}esr/linux-x86_64/xpi/ for u in $URL; do diff --git a/icecat.spec b/icecat.spec index e3315e2..6f3cf06 100644 --- a/icecat.spec +++ b/icecat.spec @@ -110,7 +110,7 @@ ExcludeArch: %{ix86} %{arm} Name: icecat Epoch: 2 -Version: 115.12.0 +Version: 115.13.0 Release: %autorelease -e %{redhat_ver} Summary: GNU version of Firefox browser diff --git a/sources b/sources index 44b7f0c..f1ba286 100644 --- a/sources +++ b/sources @@ -1,5 +1,5 @@ SHA512 (cbindgen-vendor.tar.xz) = e229f15cb3d9213413ea4793478458887167f9c78943a6fd0e0c967a78c45457ffb8c4d933096b338e1dcf9a3c81931b6eaa4fdfb46d342ac1f3c251c99cd0d5 -SHA512 (icecat-115.12.0-langpacks.tar.gz) = 9394d004da6d08c2d68727b795bdb7db44624837502040a1cf67e1fbea6b578dd0847c6f0775efd9f1b459cb86490d45510885d9edd983689ba59a83e9ca5611 -SHA512 (icecat-115.12.0-rh1.tar.bz2) = 05993db25741d18c696ddefba7e533460e87c48b2d90771aacadf4aba5d1dd365994f9c5be82e481690380f344008150f87258a0d052b55e7bcb8f4840732d29 +SHA512 (icecat-115.13.0-langpacks.tar.gz) = 1af778306bc913904f8c95b3577d0a6de640df5acf81c6f78598b181776400b29b34f61cdcd257cf566b9476c143eb2f1dc4616d9c601bc79b5e4bdce1142451 +SHA512 (icecat-115.13.0-rh1.tar.bz2) = a9222009a03946b363b739ded715a830423d5bbdb2daede7602c3fb480124a966e94b016ea7d610cb032c2657680350143c937d20b5cbcaf1cd49e966661b17f SHA512 (icecat-COPYING-licensefiles.tar.gz) = ed541845170f1d209e322b0def3248d571e0c42c4a17c74e83197e743bd8a128a1475f5312d905c8e70d047eddeac17e604373892eb6d5f1720c5c361849c42c SHA512 (icecat.png) = a3cec16cb15a27c3c91b53e2c534e78b07911011ff1331e450c0baf8e13b76da7cea2a90e5d75191fa88cfbfd40a0a7f3e553e92b64d0043dadd5ad5edfdf81c From ff2c86d61273d0c35cba681e17cc6786ebad2ef9 Mon Sep 17 00:00:00 2001 From: Yaakov Selkowitz Date: Tue, 9 Jul 2024 19:53:06 -0400 Subject: [PATCH 23/99] Fix flatpak build pkg-config is part of the flatpak buildroot and is therefore in /usr even when building for /app. The default llvm/clang are in the runtime, and the compat packages are only built in /app when needed at runtime for apps (currently, only 15), otherwise the buildroot version suffices here. Therefore, the location of these dependencies needs to be detected. --- icecat.spec | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/icecat.spec b/icecat.spec index 6f3cf06..db45cb0 100644 --- a/icecat.spec +++ b/icecat.spec @@ -275,12 +275,13 @@ BuildRequires: llvm-devel %if 0%{?build_with_clang} BuildRequires: clang17 BuildRequires: clang17-libs -BuildRequires: clang17-devel +BuildRequires: llvm17-devel BuildRequires: lld +%global llvm_suffix -17 %else BuildRequires: clang BuildRequires: clang-libs -BuildRequires: clang-devel +BuildRequires: llvm-devel %endif BuildRequires: rust %if 0%{?pgo_wayland} @@ -481,11 +482,9 @@ echo "ac_add_options --with-l10n-base=$PWD/l10n" >> .mozconfig # Clang %if 0%{?build_with_clang} -echo "ac_add_options --with-clang-path=%{_bindir}/clang-17" >> .mozconfig -echo "ac_add_options --with-libclang-path=%{_libdir}/llvm17/lib" >> .mozconfig -%else -echo "ac_add_options --with-libclang-path=%{_libdir}" >> .mozconfig +echo "ac_add_options --with-clang-path=`which clang%{?llvm_suffix}`" >> .mozconfig %endif +echo "ac_add_options --with-libclang-path=`llvm-config%{?llvm_suffix} --libdir`" >> .mozconfig %ifarch s390x echo "ac_add_options --disable-jit" >> .mozconfig @@ -591,7 +590,7 @@ export LDFLAGS=$MOZ_LINK_FLAGS export PREFIX='%{_prefix}' export LIBDIR='%{_libdir}' -export PKG_CONFIG='%{_bindir}/pkg-config' +export PKG_CONFIG="`which pkg-config`" export PYTHON='%{__python3}' %if 0%{?build_with_clang} From d1b5817a4ce2bfda7c6456a63f6bf10a69e61966 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 18 Jul 2024 10:10:32 +0000 Subject: [PATCH 24/99] Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild From 037bec18a559b84594c3939cac7737c6846d2faf Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Fri, 9 Aug 2024 23:44:37 +0200 Subject: [PATCH 25/99] Release 115.14.0 --- .gitignore | 2 ++ icecat-lang_download.sh | 2 +- icecat.spec | 2 +- sources | 4 ++-- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 3c728ff..37d576a 100644 --- a/.gitignore +++ b/.gitignore @@ -253,3 +253,5 @@ /icecat-115.12.0-rh1.tar.bz2 /icecat-115.13.0-langpacks.tar.gz /icecat-115.13.0-rh1.tar.bz2 +/icecat-115.14.0-langpacks.tar.gz +/icecat-115.14.0-rh1.tar.bz2 diff --git a/icecat-lang_download.sh b/icecat-lang_download.sh index efe7632..f143422 100755 --- a/icecat-lang_download.sh +++ b/icecat-lang_download.sh @@ -1,6 +1,6 @@ #!/bin/bash -VERSION=115.13.0 +VERSION=115.14.0 URL=https://ftp.mozilla.org/pub/firefox/releases/${VERSION}esr/linux-x86_64/xpi/ for u in $URL; do diff --git a/icecat.spec b/icecat.spec index db45cb0..40f5d5d 100644 --- a/icecat.spec +++ b/icecat.spec @@ -110,7 +110,7 @@ ExcludeArch: %{ix86} %{arm} Name: icecat Epoch: 2 -Version: 115.13.0 +Version: 115.14.0 Release: %autorelease -e %{redhat_ver} Summary: GNU version of Firefox browser diff --git a/sources b/sources index f1ba286..db10dcb 100644 --- a/sources +++ b/sources @@ -1,5 +1,5 @@ SHA512 (cbindgen-vendor.tar.xz) = e229f15cb3d9213413ea4793478458887167f9c78943a6fd0e0c967a78c45457ffb8c4d933096b338e1dcf9a3c81931b6eaa4fdfb46d342ac1f3c251c99cd0d5 -SHA512 (icecat-115.13.0-langpacks.tar.gz) = 1af778306bc913904f8c95b3577d0a6de640df5acf81c6f78598b181776400b29b34f61cdcd257cf566b9476c143eb2f1dc4616d9c601bc79b5e4bdce1142451 -SHA512 (icecat-115.13.0-rh1.tar.bz2) = a9222009a03946b363b739ded715a830423d5bbdb2daede7602c3fb480124a966e94b016ea7d610cb032c2657680350143c937d20b5cbcaf1cd49e966661b17f +SHA512 (icecat-115.14.0-langpacks.tar.gz) = 590a8f3ab4fe024b3db234fe594289682f7ace2adb85febc4e37a291d184837b8de5a38d971272f731b13e7f7fac516721206d87a04699ee902602593ab78b87 +SHA512 (icecat-115.14.0-rh1.tar.bz2) = 5d212b0a1e22c1bcee7d5eff8584ad9ac653b69515e1310cc1067d374ffcf2d3c8ec6bf489fc51122eb6184c9af5f9d1027185da99fb0d21d17d2a950a749cb1 SHA512 (icecat-COPYING-licensefiles.tar.gz) = ed541845170f1d209e322b0def3248d571e0c42c4a17c74e83197e743bd8a128a1475f5312d905c8e70d047eddeac17e604373892eb6d5f1720c5c361849c42c SHA512 (icecat.png) = a3cec16cb15a27c3c91b53e2c534e78b07911011ff1331e450c0baf8e13b76da7cea2a90e5d75191fa88cfbfd40a0a7f3e553e92b64d0043dadd5ad5edfdf81c From a59842c0bf05f4ad952424c363e71ab90c0377d6 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Thu, 5 Sep 2024 22:03:20 +0200 Subject: [PATCH 26/99] Release 115.15.0 --- .gitignore | 2 ++ icecat-lang_download.sh | 2 +- icecat.spec | 2 +- sources | 4 ++-- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 37d576a..934b8d8 100644 --- a/.gitignore +++ b/.gitignore @@ -255,3 +255,5 @@ /icecat-115.13.0-rh1.tar.bz2 /icecat-115.14.0-langpacks.tar.gz /icecat-115.14.0-rh1.tar.bz2 +/icecat-115.15.0-langpacks.tar.gz +/icecat-115.15.0-rh1.tar.bz2 diff --git a/icecat-lang_download.sh b/icecat-lang_download.sh index f143422..94b0cc9 100755 --- a/icecat-lang_download.sh +++ b/icecat-lang_download.sh @@ -1,6 +1,6 @@ #!/bin/bash -VERSION=115.14.0 +VERSION=115.15.0 URL=https://ftp.mozilla.org/pub/firefox/releases/${VERSION}esr/linux-x86_64/xpi/ for u in $URL; do diff --git a/icecat.spec b/icecat.spec index 40f5d5d..73b94d3 100644 --- a/icecat.spec +++ b/icecat.spec @@ -110,7 +110,7 @@ ExcludeArch: %{ix86} %{arm} Name: icecat Epoch: 2 -Version: 115.14.0 +Version: 115.15.0 Release: %autorelease -e %{redhat_ver} Summary: GNU version of Firefox browser diff --git a/sources b/sources index db10dcb..5358985 100644 --- a/sources +++ b/sources @@ -1,5 +1,5 @@ SHA512 (cbindgen-vendor.tar.xz) = e229f15cb3d9213413ea4793478458887167f9c78943a6fd0e0c967a78c45457ffb8c4d933096b338e1dcf9a3c81931b6eaa4fdfb46d342ac1f3c251c99cd0d5 -SHA512 (icecat-115.14.0-langpacks.tar.gz) = 590a8f3ab4fe024b3db234fe594289682f7ace2adb85febc4e37a291d184837b8de5a38d971272f731b13e7f7fac516721206d87a04699ee902602593ab78b87 -SHA512 (icecat-115.14.0-rh1.tar.bz2) = 5d212b0a1e22c1bcee7d5eff8584ad9ac653b69515e1310cc1067d374ffcf2d3c8ec6bf489fc51122eb6184c9af5f9d1027185da99fb0d21d17d2a950a749cb1 +SHA512 (icecat-115.15.0-langpacks.tar.gz) = d931df261573b7807eac9a072f6160606c32a34bd08591c5a12815cc88e77906113987ad823d666619790de83767b37a838e7ace28c86e090d2c8cca6a709736 +SHA512 (icecat-115.15.0-rh1.tar.bz2) = cd9461738aa2a9e5dd1408a31adbe3f9cad37dadea9e877f66e75a0db6af2d55fa6855549876c0d708b191d81a0af5dd9784fbfc11fa511351f8cd4aefc57dd2 SHA512 (icecat-COPYING-licensefiles.tar.gz) = ed541845170f1d209e322b0def3248d571e0c42c4a17c74e83197e743bd8a128a1475f5312d905c8e70d047eddeac17e604373892eb6d5f1720c5c361849c42c SHA512 (icecat.png) = a3cec16cb15a27c3c91b53e2c534e78b07911011ff1331e450c0baf8e13b76da7cea2a90e5d75191fa88cfbfd40a0a7f3e553e92b64d0043dadd5ad5edfdf81c From 624743709a776a5c78e904317f1bc8d77af7c431 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Sat, 7 Sep 2024 23:02:14 +0200 Subject: [PATCH 27/99] Rebuild for F40 build issue From f2c1a42b4b6decac6d77c3281fe89675c508bb73 Mon Sep 17 00:00:00 2001 From: Dominik 'Rathann' Mierzejewski Date: Wed, 25 Sep 2024 15:00:35 +0200 Subject: [PATCH 28/99] Rebuilt for FFmpeg 7 From 2a863ee65d021c2d82a56c62547778c2f4b4ea18 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miroslav=20Such=C3=BD?= Date: Thu, 26 Sep 2024 10:02:37 +0000 Subject: [PATCH 29/99] Correct SPDX license The file COPYING-BSD.txt matches BSD-4-Clause-UC This is part of https://fedoraproject.org/wiki/Changes/SPDX_Licenses_Phase_4 If there will be no comments in two weeks, I will merge this. --- icecat.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/icecat.spec b/icecat.spec index 73b94d3..073133c 100644 --- a/icecat.spec +++ b/icecat.spec @@ -115,7 +115,7 @@ Release: %autorelease -e %{redhat_ver} Summary: GNU version of Firefox browser # Tri-licensing scheme for Gnuzilla/IceCat in parentheses, and licenses for the extensions included -License: (MPL-1.1 OR GPL-2.0-or-later OR LGPL-2.1-or-later) AND GPL-3.0-or-later AND MIT AND BSD AND ISC AND Apache-2.0 AND MPL-2.0 +License: (MPL-1.1 OR GPL-2.0-or-later OR LGPL-2.1-or-later) AND GPL-3.0-or-later AND MIT AND BSD-4-Clause-UC AND ISC AND Apache-2.0 AND MPL-2.0 URL: http://www.gnu.org/software/gnuzilla/ ## Source archive created by scripts based on Gnuzilla files. From c7d064dc506f32e7b7235555345552dad3475472 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Thu, 3 Oct 2024 20:13:58 +0200 Subject: [PATCH 30/99] Release 115.16.0 --- .gitignore | 2 ++ icecat-lang_download.sh | 2 +- icecat.spec | 2 +- sources | 4 ++-- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 934b8d8..028081f 100644 --- a/.gitignore +++ b/.gitignore @@ -257,3 +257,5 @@ /icecat-115.14.0-rh1.tar.bz2 /icecat-115.15.0-langpacks.tar.gz /icecat-115.15.0-rh1.tar.bz2 +/icecat-115.16.0-langpacks.tar.gz +/icecat-115.16.0-rh1.tar.bz2 diff --git a/icecat-lang_download.sh b/icecat-lang_download.sh index 94b0cc9..b55f0f1 100755 --- a/icecat-lang_download.sh +++ b/icecat-lang_download.sh @@ -1,6 +1,6 @@ #!/bin/bash -VERSION=115.15.0 +VERSION=115.16.0 URL=https://ftp.mozilla.org/pub/firefox/releases/${VERSION}esr/linux-x86_64/xpi/ for u in $URL; do diff --git a/icecat.spec b/icecat.spec index 073133c..aff2660 100644 --- a/icecat.spec +++ b/icecat.spec @@ -110,7 +110,7 @@ ExcludeArch: %{ix86} %{arm} Name: icecat Epoch: 2 -Version: 115.15.0 +Version: 115.16.0 Release: %autorelease -e %{redhat_ver} Summary: GNU version of Firefox browser diff --git a/sources b/sources index 5358985..729862c 100644 --- a/sources +++ b/sources @@ -1,5 +1,5 @@ SHA512 (cbindgen-vendor.tar.xz) = e229f15cb3d9213413ea4793478458887167f9c78943a6fd0e0c967a78c45457ffb8c4d933096b338e1dcf9a3c81931b6eaa4fdfb46d342ac1f3c251c99cd0d5 -SHA512 (icecat-115.15.0-langpacks.tar.gz) = d931df261573b7807eac9a072f6160606c32a34bd08591c5a12815cc88e77906113987ad823d666619790de83767b37a838e7ace28c86e090d2c8cca6a709736 -SHA512 (icecat-115.15.0-rh1.tar.bz2) = cd9461738aa2a9e5dd1408a31adbe3f9cad37dadea9e877f66e75a0db6af2d55fa6855549876c0d708b191d81a0af5dd9784fbfc11fa511351f8cd4aefc57dd2 +SHA512 (icecat-115.16.0-langpacks.tar.gz) = 3a8d5db042c327bd7364649f011f8be064ee08d81439745666037d3582abb85196a558e703457f54967b91171889f9e647621aece0dbf04e403377902547eaae +SHA512 (icecat-115.16.0-rh1.tar.bz2) = 5ad6ce252b44dc06b9103134bb07d7aba6003aa47574b99c6ab9a395d824260fab59c9fc0d79e005f53b4e437b6964e5a444428dd56f45e5480994941417fe46 SHA512 (icecat-COPYING-licensefiles.tar.gz) = ed541845170f1d209e322b0def3248d571e0c42c4a17c74e83197e743bd8a128a1475f5312d905c8e70d047eddeac17e604373892eb6d5f1720c5c361849c42c SHA512 (icecat.png) = a3cec16cb15a27c3c91b53e2c534e78b07911011ff1331e450c0baf8e13b76da7cea2a90e5d75191fa88cfbfd40a0a7f3e553e92b64d0043dadd5ad5edfdf81c From fafac2aff6a456bf9f9f2a1a179e4bb01f55136c Mon Sep 17 00:00:00 2001 From: Neal Gompa Date: Sat, 5 Oct 2024 08:49:45 -0400 Subject: [PATCH 31/99] Rebuild for ffmpeg 7 (again) From 7d7154152744b584ff61ffd385bd60e445b79ce8 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Thu, 10 Oct 2024 19:49:04 +0200 Subject: [PATCH 32/99] Release 115.16.1 --- .gitignore | 2 ++ icecat-lang_download.sh | 2 +- icecat.spec | 2 +- sources | 4 ++-- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 028081f..8f60452 100644 --- a/.gitignore +++ b/.gitignore @@ -259,3 +259,5 @@ /icecat-115.15.0-rh1.tar.bz2 /icecat-115.16.0-langpacks.tar.gz /icecat-115.16.0-rh1.tar.bz2 +/icecat-115.16.1-langpacks.tar.gz +/icecat-115.16.1-rh1.tar.bz2 diff --git a/icecat-lang_download.sh b/icecat-lang_download.sh index b55f0f1..7a73277 100755 --- a/icecat-lang_download.sh +++ b/icecat-lang_download.sh @@ -1,6 +1,6 @@ #!/bin/bash -VERSION=115.16.0 +VERSION=115.16.1 URL=https://ftp.mozilla.org/pub/firefox/releases/${VERSION}esr/linux-x86_64/xpi/ for u in $URL; do diff --git a/icecat.spec b/icecat.spec index aff2660..1c2e5df 100644 --- a/icecat.spec +++ b/icecat.spec @@ -110,7 +110,7 @@ ExcludeArch: %{ix86} %{arm} Name: icecat Epoch: 2 -Version: 115.16.0 +Version: 115.16.1 Release: %autorelease -e %{redhat_ver} Summary: GNU version of Firefox browser diff --git a/sources b/sources index 729862c..dbfca91 100644 --- a/sources +++ b/sources @@ -1,5 +1,5 @@ SHA512 (cbindgen-vendor.tar.xz) = e229f15cb3d9213413ea4793478458887167f9c78943a6fd0e0c967a78c45457ffb8c4d933096b338e1dcf9a3c81931b6eaa4fdfb46d342ac1f3c251c99cd0d5 -SHA512 (icecat-115.16.0-langpacks.tar.gz) = 3a8d5db042c327bd7364649f011f8be064ee08d81439745666037d3582abb85196a558e703457f54967b91171889f9e647621aece0dbf04e403377902547eaae -SHA512 (icecat-115.16.0-rh1.tar.bz2) = 5ad6ce252b44dc06b9103134bb07d7aba6003aa47574b99c6ab9a395d824260fab59c9fc0d79e005f53b4e437b6964e5a444428dd56f45e5480994941417fe46 +SHA512 (icecat-115.16.1-langpacks.tar.gz) = 315239a2740e9e26ec2321b571ba220010607e3c3615ac6989190486189dabc60a7411cd6572a4dc66d29a8e2e5fa32692b54f7586e06162f9a76a0531fd50a8 +SHA512 (icecat-115.16.1-rh1.tar.bz2) = 9c8fd76ee7084963632f212458da61d48d6f96551d9f58b55e202b18188d605a928d80693d17f3fd0faffea9dd636e086c0d427fc066b9f9cb90541bea2b681d SHA512 (icecat-COPYING-licensefiles.tar.gz) = ed541845170f1d209e322b0def3248d571e0c42c4a17c74e83197e743bd8a128a1475f5312d905c8e70d047eddeac17e604373892eb6d5f1720c5c361849c42c SHA512 (icecat.png) = a3cec16cb15a27c3c91b53e2c534e78b07911011ff1331e450c0baf8e13b76da7cea2a90e5d75191fa88cfbfd40a0a7f3e553e92b64d0043dadd5ad5edfdf81c From 3633261b4a2f38d1e949ea9ec87cb0882e7ccd4c Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Fri, 1 Nov 2024 14:59:13 +0100 Subject: [PATCH 33/99] Release 115.17.0 --- .gitignore | 2 ++ icecat-lang_download.sh | 2 +- icecat.spec | 2 +- sources | 4 ++-- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 8f60452..8cb4610 100644 --- a/.gitignore +++ b/.gitignore @@ -261,3 +261,5 @@ /icecat-115.16.0-rh1.tar.bz2 /icecat-115.16.1-langpacks.tar.gz /icecat-115.16.1-rh1.tar.bz2 +/icecat-115.17.0-langpacks.tar.gz +/icecat-115.17.0-rh1.tar.bz2 diff --git a/icecat-lang_download.sh b/icecat-lang_download.sh index 7a73277..b485383 100755 --- a/icecat-lang_download.sh +++ b/icecat-lang_download.sh @@ -1,6 +1,6 @@ #!/bin/bash -VERSION=115.16.1 +VERSION=115.17.0 URL=https://ftp.mozilla.org/pub/firefox/releases/${VERSION}esr/linux-x86_64/xpi/ for u in $URL; do diff --git a/icecat.spec b/icecat.spec index 1c2e5df..ff1605a 100644 --- a/icecat.spec +++ b/icecat.spec @@ -110,7 +110,7 @@ ExcludeArch: %{ix86} %{arm} Name: icecat Epoch: 2 -Version: 115.16.1 +Version: 115.17.0 Release: %autorelease -e %{redhat_ver} Summary: GNU version of Firefox browser diff --git a/sources b/sources index dbfca91..bc1c158 100644 --- a/sources +++ b/sources @@ -1,5 +1,5 @@ SHA512 (cbindgen-vendor.tar.xz) = e229f15cb3d9213413ea4793478458887167f9c78943a6fd0e0c967a78c45457ffb8c4d933096b338e1dcf9a3c81931b6eaa4fdfb46d342ac1f3c251c99cd0d5 -SHA512 (icecat-115.16.1-langpacks.tar.gz) = 315239a2740e9e26ec2321b571ba220010607e3c3615ac6989190486189dabc60a7411cd6572a4dc66d29a8e2e5fa32692b54f7586e06162f9a76a0531fd50a8 -SHA512 (icecat-115.16.1-rh1.tar.bz2) = 9c8fd76ee7084963632f212458da61d48d6f96551d9f58b55e202b18188d605a928d80693d17f3fd0faffea9dd636e086c0d427fc066b9f9cb90541bea2b681d +SHA512 (icecat-115.17.0-langpacks.tar.gz) = 1f5906f0806d63bf58685799220588a86d24b0dabf2f8e8d4b6b9752a267331646cf79a86451b97f2280149ffab6c22d096853e845d332f504f79934f811d8f6 +SHA512 (icecat-115.17.0-rh1.tar.bz2) = b363dde77d1e84ddc0eab05b6bb01c898ca099a9fd45a5642f5dd8d4cecc698874c4118e8bc17a0e0ab1ec5afd4c98f3ca44dbbb898efcb1e1908df3606961bb SHA512 (icecat-COPYING-licensefiles.tar.gz) = ed541845170f1d209e322b0def3248d571e0c42c4a17c74e83197e743bd8a128a1475f5312d905c8e70d047eddeac17e604373892eb6d5f1720c5c361849c42c SHA512 (icecat.png) = a3cec16cb15a27c3c91b53e2c534e78b07911011ff1331e450c0baf8e13b76da7cea2a90e5d75191fa88cfbfd40a0a7f3e553e92b64d0043dadd5ad5edfdf81c From 1ef3ae80344e2cbb5b526dc27bb143d0531b2a9f Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Wed, 27 Nov 2024 21:54:43 +0100 Subject: [PATCH 34/99] Release 115.18.0 --- .gitignore | 2 ++ icecat-lang_download.sh | 2 +- icecat.spec | 2 +- sources | 4 ++-- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 8cb4610..249f626 100644 --- a/.gitignore +++ b/.gitignore @@ -263,3 +263,5 @@ /icecat-115.16.1-rh1.tar.bz2 /icecat-115.17.0-langpacks.tar.gz /icecat-115.17.0-rh1.tar.bz2 +/icecat-115.18.0-langpacks.tar.gz +/icecat-115.18.0-rh1.tar.bz2 diff --git a/icecat-lang_download.sh b/icecat-lang_download.sh index b485383..1b6b598 100755 --- a/icecat-lang_download.sh +++ b/icecat-lang_download.sh @@ -1,6 +1,6 @@ #!/bin/bash -VERSION=115.17.0 +VERSION=115.18.0 URL=https://ftp.mozilla.org/pub/firefox/releases/${VERSION}esr/linux-x86_64/xpi/ for u in $URL; do diff --git a/icecat.spec b/icecat.spec index ff1605a..9cb8aa4 100644 --- a/icecat.spec +++ b/icecat.spec @@ -110,7 +110,7 @@ ExcludeArch: %{ix86} %{arm} Name: icecat Epoch: 2 -Version: 115.17.0 +Version: 115.18.0 Release: %autorelease -e %{redhat_ver} Summary: GNU version of Firefox browser diff --git a/sources b/sources index bc1c158..4205af6 100644 --- a/sources +++ b/sources @@ -1,5 +1,5 @@ SHA512 (cbindgen-vendor.tar.xz) = e229f15cb3d9213413ea4793478458887167f9c78943a6fd0e0c967a78c45457ffb8c4d933096b338e1dcf9a3c81931b6eaa4fdfb46d342ac1f3c251c99cd0d5 -SHA512 (icecat-115.17.0-langpacks.tar.gz) = 1f5906f0806d63bf58685799220588a86d24b0dabf2f8e8d4b6b9752a267331646cf79a86451b97f2280149ffab6c22d096853e845d332f504f79934f811d8f6 -SHA512 (icecat-115.17.0-rh1.tar.bz2) = b363dde77d1e84ddc0eab05b6bb01c898ca099a9fd45a5642f5dd8d4cecc698874c4118e8bc17a0e0ab1ec5afd4c98f3ca44dbbb898efcb1e1908df3606961bb +SHA512 (icecat-115.18.0-langpacks.tar.gz) = f0fd3cd553994cd9380d5898cce7360eab2cd80a277a906ac0e3287077f328d6f74759b2a4f48e382104f87c9f3d7ba30ac7a3ef05802b7721399478bcb7423f +SHA512 (icecat-115.18.0-rh1.tar.bz2) = 28f29eee31bfbe87cc25deed82bd5fa2b7c88a606b9a921bcd8a865acb7efdc65f7d23bd2b9b5d41f5642bc2e18fb66c972efcf9fd7aae27e013ddeaad6dd507 SHA512 (icecat-COPYING-licensefiles.tar.gz) = ed541845170f1d209e322b0def3248d571e0c42c4a17c74e83197e743bd8a128a1475f5312d905c8e70d047eddeac17e604373892eb6d5f1720c5c361849c42c SHA512 (icecat.png) = a3cec16cb15a27c3c91b53e2c534e78b07911011ff1331e450c0baf8e13b76da7cea2a90e5d75191fa88cfbfd40a0a7f3e553e92b64d0043dadd5ad5edfdf81c From 2b058c423b46a9ae741be634b311259212695d58 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Sun, 8 Dec 2024 23:29:54 +0100 Subject: [PATCH 35/99] Fix CVE-2024-11693 CVE-2024-11697 CVE-2024-11692 --- .gitignore | 1 + icecat.spec | 9 ++------- sources | 2 +- 3 files changed, 4 insertions(+), 8 deletions(-) diff --git a/.gitignore b/.gitignore index 249f626..95e0ace 100644 --- a/.gitignore +++ b/.gitignore @@ -265,3 +265,4 @@ /icecat-115.17.0-rh1.tar.bz2 /icecat-115.18.0-langpacks.tar.gz /icecat-115.18.0-rh1.tar.bz2 +/icecat-115.18.0-rh2.tar.bz2 diff --git a/icecat.spec b/icecat.spec index 9cb8aa4..10fa795 100644 --- a/icecat.spec +++ b/icecat.spec @@ -2,13 +2,8 @@ # Set to true if it's going to be submitted as update %global release_build 1 -# Set new source-code build version -# This tag indicates a new rebuild for Fedora -%global redhat_ver rh1 - -# Build is failing because of -# include/mozilla/FloatingPoint.h:212:31: error: inlining failed in call to ‘always_inline’ ‘bool mozilla::IsNegativeZero(T) [with T = double]’: indirect function call with a yet undetermined callee -#ExcludeArch: s390x +# Set new source-code build version for Fedora and, not necessarily, for upstream too +%global redhat_ver rh2 ExcludeArch: %{ix86} %{arm} diff --git a/sources b/sources index 4205af6..0b0c6f8 100644 --- a/sources +++ b/sources @@ -1,5 +1,5 @@ SHA512 (cbindgen-vendor.tar.xz) = e229f15cb3d9213413ea4793478458887167f9c78943a6fd0e0c967a78c45457ffb8c4d933096b338e1dcf9a3c81931b6eaa4fdfb46d342ac1f3c251c99cd0d5 SHA512 (icecat-115.18.0-langpacks.tar.gz) = f0fd3cd553994cd9380d5898cce7360eab2cd80a277a906ac0e3287077f328d6f74759b2a4f48e382104f87c9f3d7ba30ac7a3ef05802b7721399478bcb7423f -SHA512 (icecat-115.18.0-rh1.tar.bz2) = 28f29eee31bfbe87cc25deed82bd5fa2b7c88a606b9a921bcd8a865acb7efdc65f7d23bd2b9b5d41f5642bc2e18fb66c972efcf9fd7aae27e013ddeaad6dd507 +SHA512 (icecat-115.18.0-rh2.tar.bz2) = 270ad24f00feb1a8a23285323a41a23a4e42987ccb8f5c06b156e27795873af1812521121ec8c68d95337233a4f4a6b9f01b16e23b49a8a4a83b1fcc890d1003 SHA512 (icecat-COPYING-licensefiles.tar.gz) = ed541845170f1d209e322b0def3248d571e0c42c4a17c74e83197e743bd8a128a1475f5312d905c8e70d047eddeac17e604373892eb6d5f1720c5c361849c42c SHA512 (icecat.png) = a3cec16cb15a27c3c91b53e2c534e78b07911011ff1331e450c0baf8e13b76da7cea2a90e5d75191fa88cfbfd40a0a7f3e553e92b64d0043dadd5ad5edfdf81c From 6895b2796e3af986af769ecaef0e778d03f01d1c Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Thu, 9 Jan 2025 20:56:24 +0100 Subject: [PATCH 36/99] Release 115.19.0 --- .gitignore | 2 + icecat-lang_download.sh | 2 +- icecat-wayland.desktop | 23 --- icecat-wayland.sh.in | 7 - icecat-x11.desktop | 338 ---------------------------------------- icecat-x11.sh.in | 7 - icecat.spec | 85 ++++------ sources | 4 +- 8 files changed, 39 insertions(+), 429 deletions(-) delete mode 100644 icecat-wayland.desktop delete mode 100644 icecat-wayland.sh.in delete mode 100644 icecat-x11.desktop delete mode 100644 icecat-x11.sh.in diff --git a/.gitignore b/.gitignore index 95e0ace..5e08528 100644 --- a/.gitignore +++ b/.gitignore @@ -266,3 +266,5 @@ /icecat-115.18.0-langpacks.tar.gz /icecat-115.18.0-rh1.tar.bz2 /icecat-115.18.0-rh2.tar.bz2 +/icecat-115.19.0-langpacks.tar.gz +/icecat-115.19.0-rh1.tar.bz2 diff --git a/icecat-lang_download.sh b/icecat-lang_download.sh index 1b6b598..20ee05b 100755 --- a/icecat-lang_download.sh +++ b/icecat-lang_download.sh @@ -1,6 +1,6 @@ #!/bin/bash -VERSION=115.18.0 +VERSION=115.19.0 URL=https://ftp.mozilla.org/pub/firefox/releases/${VERSION}esr/linux-x86_64/xpi/ for u in $URL; do diff --git a/icecat-wayland.desktop b/icecat-wayland.desktop deleted file mode 100644 index 44e6c47..0000000 --- a/icecat-wayland.desktop +++ /dev/null @@ -1,23 +0,0 @@ -[Desktop Entry] -Version=1.0 -Name=GNU IceCat on Wayland -Comment=Browse the World Wide Web -GenericName=Web Browser -Keywords=Internet;WWW;Browser;Web;Explorer; -Exec=icecat-wayland --name icecat-wayland %u -Icon=icecat -Terminal=false -Type=Application -MimeType=text/html;text/xml;application/xhtml+xml;application/xml;application/rss+xml;application/rdf+xml;image/gif;image/jpeg;image/png;x-scheme-handler/http;x-scheme-handler/https;x-scheme-handler/ftp;x-scheme-handler/chrome;video/webm;application/x-xpinstall; -Categories=Network;WebBrowser; -StartupNotify=true -Name[en_US]=GNU IceCat on Wayland -Actions=new-window;new-private-window; - -[Desktop Action new-window] -Name=Open a New Window -Exec=icecat-wayland --name icecat-wayland --new-window %u - -[Desktop Action new-private-window] -Name=Open a New Private Window -Exec=icecat-wayland --private-window --name icecat-wayland %u diff --git a/icecat-wayland.sh.in b/icecat-wayland.sh.in deleted file mode 100644 index d04465c..0000000 --- a/icecat-wayland.sh.in +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/bash -# -# Run GNU IceCat under Wayland -# - -export MOZ_ENABLE_WAYLAND=1 -exec /__PREFIX__/bin/icecat "$@" diff --git a/icecat-x11.desktop b/icecat-x11.desktop deleted file mode 100644 index 6e7eea8..0000000 --- a/icecat-x11.desktop +++ /dev/null @@ -1,338 +0,0 @@ -[Desktop Entry] -Version=1.0 -Name=GNU IceCat on X11 -Comment=Browse the World Wide Web -Comment[ar]=تصفح الشبكة العنكبوتية العالمية -Comment[ast]=Restola pela Rede -Comment[bn]=ইন্টারনেট ব্রাউজ করুন -Comment[ca]=Navegueu per la web -Comment[cs]=Prohlížení stránek World Wide Webu -Comment[da]=Surf på internettet -Comment[de]=Im Internet surfen -Comment[el]=Μπορείτε να περιηγηθείτε στο διαδίκτυο (Web) -Comment[es]=Navegue por la web -Comment[et]=Lehitse veebi -Comment[fa]=صفحات شبکه جهانی اینترنت را مرور نمایید -Comment[fi]=Selaa Internetin WWW-sivuja -Comment[fr]=Naviguer sur le Web -Comment[gl]=Navegar pola rede -Comment[he]=גלישה ברחבי האינטרנט -Comment[hr]=Pretražite web -Comment[hu]=A világháló böngészése -Comment[it]=Esplora il web -Comment[ja]=ウェブを閲覧します -Comment[ko]=웹을 돌아 다닙니다 -Comment[ku]=Li torê bigere -Comment[lt]=Naršykite internete -Comment[nb]=Surf på nettet -Comment[nl]=Verken het internet -Comment[nn]=Surf på nettet -Comment[no]=Surf på nettet -Comment[pl]=Przeglądanie stron WWW -Comment[pt]=Navegue na Internet -Comment[pt_BR]=Navegue na Internet -Comment[ro]=Navigați pe Internet -Comment[ru]=Доступ в Интернет -Comment[sk]=Prehliadanie internetu -Comment[sl]=Brskajte po spletu -Comment[sv]=Surfa på webben -Comment[tr]=İnternet'te Gezinin -Comment[ug]=دۇنيادىكى توربەتلەرنى كۆرگىلى بولىدۇ -Comment[uk]=Перегляд сторінок Інтернету -Comment[vi]=Để duyệt các trang web -Comment[zh_CN]=浏览互联网 -Comment[zh_TW]=瀏覽網際網路 -GenericName=Web Browser -GenericName[ar]=متصفح ويب -GenericName[ast]=Restolador Web -GenericName[bn]=ওয়েব ব্রাউজার -GenericName[ca]=Navegador web -GenericName[cs]=Webový prohlížeč -GenericName[da]=Webbrowser -GenericName[el]=Περιηγητής διαδικτύου -GenericName[es]=Navegador web -GenericName[et]=Veebibrauser -GenericName[fa]=مرورگر اینترنتی -GenericName[fi]=WWW-selain -GenericName[fr]=Navigateur Web -GenericName[gl]=Navegador Web -GenericName[he]=דפדפן אינטרנט -GenericName[hr]=Web preglednik -GenericName[hu]=Webböngésző -GenericName[it]=Browser web -GenericName[ja]=ウェブ・ブラウザ -GenericName[ko]=웹 브라우저 -GenericName[ku]=Geroka torê -GenericName[lt]=Interneto naršyklė -GenericName[nb]=Nettleser -GenericName[nl]=Webbrowser -GenericName[nn]=Nettlesar -GenericName[no]=Nettleser -GenericName[pl]=Przeglądarka WWW -GenericName[pt]=Navegador Web -GenericName[pt_BR]=Navegador Web -GenericName[ro]=Navigator Internet -GenericName[ru]=Веб-браузер -GenericName[sk]=Internetový prehliadač -GenericName[sl]=Spletni brskalnik -GenericName[sv]=Webbläsare -GenericName[tr]=Web Tarayıcı -GenericName[ug]=توركۆرگۈ -GenericName[uk]=Веб-браузер -GenericName[vi]=Trình duyệt Web -GenericName[zh_CN]=网络浏览器 -GenericName[zh_TW]=網路瀏覽器 -Keywords=Internet;WWW;Browser;Web;Explorer; -Keywords[ar]=انترنت;إنترنت;متصفح;ويب;وب; -Keywords[ast]=Internet;WWW;Restolador;Web;Esplorador; -Keywords[ca]=Internet;WWW;Navegador;Web;Explorador;Explorer; -Keywords[cs]=Internet;WWW;Prohlížeč;Web;Explorer; -Keywords[da]=Internet;Internettet;WWW;Browser;Browse;Web;Surf;Nettet; -Keywords[de]=Internet;WWW;Browser;Web;Explorer;Webseite;Site;surfen;online;browsen; -Keywords[el]=Internet;WWW;Browser;Web;Explorer;Διαδίκτυο;Περιηγητής;IceCat;Φιρεφοχ;Ιντερνετ; -Keywords[es]=Explorador;Internet;WWW; -Keywords[fi]=Internet;WWW;Browser;Web;Explorer;selain;Internet-selain;internetselain;verkkoselain;netti;surffaa; -Keywords[fr]=Internet;WWW;Browser;Web;Explorer;Fureteur;Surfer;Navigateur; -Keywords[he]=דפדפן;אינטרנט;רשת;אתרים;אתר;פיירפוקס;מוזילה; -Keywords[hr]=Internet;WWW;preglednik;Web; -Keywords[hu]=Internet;WWW;Böngésző;Web;Háló;Net;Explorer; -Keywords[it]=Internet;WWW;Browser;Web;Navigatore; -Keywords[is]=Internet;WWW;Vafri;Vefur;Netvafri;Flakk; -Keywords[ja]=Internet;WWW;Web;インターネット;ブラウザ;ウェブ;エクスプローラ; -Keywords[nb]=Internett;WWW;Nettleser;Explorer;Web;Browser;Nettside; -Keywords[nl]=Internet;WWW;Browser;Web;Explorer;Verkenner;Website;Surfen;Online; -Keywords[pt]=Internet;WWW;Browser;Web;Explorador;Navegador; -Keywords[pt_BR]=Internet;WWW;Browser;Web;Explorador;Navegador; -Keywords[ru]=Internet;WWW;Browser;Web;Explorer;интернет;браузер;веб;файрфокс;огнелис; -Keywords[sk]=Internet;WWW;Prehliadač;Web;Explorer; -Keywords[sl]=Internet;WWW;Browser;Web;Explorer;Brskalnik;Splet; -Keywords[tr]=İnternet;WWW;Tarayıcı;Web;Gezgin;Web sitesi;Site;sörf;çevrimiçi;tara; -Keywords[uk]=Internet;WWW;Browser;Web;Explorer;Інтернет;мережа;переглядач;оглядач;браузер;веб;файрфокс;вогнелис;перегляд; -Keywords[vi]=Internet;WWW;Browser;Web;Explorer;Trình duyệt;Trang web; -Keywords[zh_CN]=Internet;WWW;Browser;Web;Explorer;网页;浏览;上网;火狐;IceCat;ff;互联网;网站; -Keywords[zh_TW]=Internet;WWW;Browser;Web;Explorer;網際網路;網路;瀏覽器;上網;網頁;火狐; -Exec=icecat-x11 --name icecat-x11 %u -Icon=icecat -Terminal=false -Type=Application -MimeType=text/html;text/xml;application/xhtml+xml;application/xml;application/rss+xml;application/rdf+xml;image/gif;image/jpeg;image/png;x-scheme-handler/http;x-scheme-handler/https;x-scheme-handler/ftp;x-scheme-handler/chrome;video/webm;application/x-xpinstall; -Categories=Network;WebBrowser; -StartupNotify=true -Name[en_US]=GNU IceCat on X11 -Actions=new-window;new-private-window; - -[Desktop Action new-window] -Name=Open a New Window -Name[ach]=Dirica manyen -Name[af]=Nuwe venster -Name[an]=Nueva finestra -Name[ar]=نافذة جديدة -Name[as]=নতুন উইন্ডো -Name[ast]=Ventana nueva -Name[az]=Yeni Pəncərə -Name[be]=Новае акно -Name[bg]=Нов прозорец -Name[bn-BD]=নতুন উইন্ডো (N) -Name[bn-IN]=নতুন উইন্ডো -Name[br]=Prenestr nevez -Name[brx]=गोदान उइन्ड'(N) -Name[bs]=Novi prozor -Name[ca]=Finestra nova -Name[cak]=K'ak'a' tzuwäch -Name[cs]=Nové okno -Name[cy]=Ffenestr Newydd -Name[da]=Nyt vindue -Name[de]=­Neues Fenster -Name[dsb]=Nowe wokno -Name[el]=Νέο παράθυρο -Name[en-GB]=New Window -Name[en-US]=New Window -Name[en-ZA]=New Window -Name[eo]=Nova fenestro -Name[es-AR]=Nueva ventana -Name[es-CL]=Nueva ventana -Name[es-ES]=Nueva ventana -Name[es-MX]=Nueva ventana -Name[et]=Uus aken -Name[eu]=Leiho berria -Name[fa]=پنجره جدید‌ -Name[ff]=Henorde Hesere -Name[fi]=Uusi ikkuna -Name[fr]=­Nouvelle fenêtre -Name[fy-NL]=Nij finster -Name[ga-IE]=Fuinneog Nua -Name[gd]=Uinneag ùr -Name[gl]=Nova xanela -Name[gn]=Ovetã pyahu -Name[gu-IN]=નવી વિન્ડો -Name[he]=חלון חדש -Name[hi-IN]=नया विंडो -Name[hr]=Novi prozor -Name[hsb]=Nowe wokno -Name[hu]=Új ablak -Name[hy-AM]=Նոր Պատուհան -Name[id]=Jendela Baru -Name[is]=Nýr gluggi -Name[it]=Nuova finestra­ -Name[ja]=新しいウィンドウ -Name[ja-JP-mac]=新規ウインドウ -Name[ka]=ახალი ფანჯარა -Name[kk]=Жаңа терезе -Name[km]=បង្អួច​​​ថ្មី -Name[kn]=ಹೊಸ ಕಿಟಕಿ -Name[ko]=새 창 -Name[kok]=नवें जनेल -Name[ks]=نئئ وِنڈو -Name[lij]=Neuvo barcon -Name[lo]=ຫນ້າຕ່າງໃຫມ່ -Name[lt]=Naujas langas -Name[ltg]=Jauns lūgs -Name[lv]=Jauns logs -Name[mai]=नव विंडो -Name[mk]=Нов прозорец -Name[ml]=പുതിയ ജാലകം -Name[mr]=नवीन पटल -Name[ms]=Tetingkap Baru -Name[my]=ဝင်းဒိုးအသစ် -Name[nb-NO]=Nytt vindu -Name[ne-NP]=नयाँ सञ्झ्याल -Name[nl]=Nieuw venster -Name[nn-NO]=Nytt vindauge -Name[or]=ନୂତନ ୱିଣ୍ଡୋ -Name[pa-IN]=ਨਵੀਂ ਵਿੰਡੋ -Name[pl]=Nowe okno -Name[pt-BR]=Nova janela -Name[pt-PT]=Nova janela -Name[rm]=Nova fanestra -Name[ro]=Fereastră nouă -Name[ru]=Новое окно -Name[sat]=नावा विंडो (N) -Name[si]=නව කවුළුවක් -Name[sk]=Nové okno -Name[sl]=Novo okno -Name[son]=Zanfun taaga -Name[sq]=Dritare e Re -Name[sr]=Нови прозор -Name[sv-SE]=Nytt fönster -Name[ta]=புதிய சாளரம் -Name[te]=కొత్త విండో -Name[th]=หน้าต่างใหม่ -Name[tr]=Yeni pencere -Name[tsz]=Eraatarakua jimpani -Name[uk]=Нове вікно -Name[ur]=نیا دریچہ -Name[uz]=Yangi oyna -Name[vi]=Cửa sổ mới -Name[wo]=Palanteer bu bees -Name[xh]=Ifestile entsha -Name[zh-CN]=新建窗口 -Name[zh-TW]=開新視窗 -Exec=icecat-x11 --name icecat-x11 --new-window %u - -[Desktop Action new-private-window] -Name=Open a New Private Window -Name[ach]=Dirica manyen me mung -Name[af]=Nuwe privaatvenster -Name[an]=Nueva finestra privada -Name[ar]=نافذة خاصة جديدة -Name[as]=নতুন ব্যক্তিগত উইন্ডো -Name[ast]=Ventana privada nueva -Name[az]=Yeni Məxfi Pəncərə -Name[be]=Новае акно адасаблення -Name[bg]=Нов прозорец за поверително сърфиране -Name[bn-BD]=নতুন ব্যক্তিগত উইন্ডো -Name[bn-IN]=নতুন ব্যক্তিগত উইন্ডো -Name[br]=Prenestr merdeiñ prevez nevez -Name[brx]=गोदान प्राइभेट उइन्ड' -Name[bs]=Novi privatni prozor -Name[ca]=Finestra privada nova -Name[cak]=K'ak'a' ichinan tzuwäch -Name[cs]=Nové anonymní okno -Name[cy]=Ffenestr Breifat Newydd -Name[da]=Nyt privat vindue -Name[de]=Neues privates Fenster -Name[dsb]=Nowe priwatne wokno -Name[el]=Νέο παράθυρο ιδιωτικής περιήγησης -Name[en-GB]=New Private Window -Name[en-US]=New Private Window -Name[en-ZA]=New Private Window -Name[eo]=Nova privata fenestro -Name[es-AR]=Nueva ventana privada -Name[es-CL]=Nueva ventana privada -Name[es-ES]=Nueva ventana privada -Name[es-MX]=Nueva ventana privada -Name[et]=Uus privaatne aken -Name[eu]=Leiho pribatu berria -Name[fa]=پنجره ناشناس جدید -Name[ff]=Henorde Suturo Hesere -Name[fi]=Uusi yksityinen ikkuna -Name[fr]=Nouvelle fenêtre de navigation privée -Name[fy-NL]=Nij priveefinster -Name[ga-IE]=Fuinneog Nua Phríobháideach -Name[gd]=Uinneag phrìobhaideach ùr -Name[gl]=Nova xanela privada -Name[gn]=Ovetã ñemi pyahu -Name[gu-IN]=નવી ખાનગી વિન્ડો -Name[he]=חלון פרטי חדש -Name[hi-IN]=नयी निजी विंडो -Name[hr]=Novi privatni prozor -Name[hsb]=Nowe priwatne wokno -Name[hu]=Új privát ablak -Name[hy-AM]=Սկսել Գաղտնի դիտարկում -Name[id]=Jendela Mode Pribadi Baru -Name[is]=Nýr huliðsgluggi -Name[it]=Nuova finestra anonima -Name[ja]=新しいプライベートウィンドウ -Name[ja-JP-mac]=新規プライベートウインドウ -Name[ka]=ახალი პირადი ფანჯარა -Name[kk]=Жаңа жекелік терезе -Name[km]=បង្អួច​ឯកជន​ថ្មី -Name[kn]=ಹೊಸ ಖಾಸಗಿ ಕಿಟಕಿ -Name[ko]=새 사생활 보호 모드 -Name[kok]=नवो खाजगी विंडो -Name[ks]=نْو پرایوٹ وینڈو& -Name[lij]=Neuvo barcon privou -Name[lo]=ເປີດຫນ້າຕ່າງສວນຕົວຂື້ນມາໃຫມ່ -Name[lt]=Naujas privataus naršymo langas -Name[ltg]=Jauns privatais lūgs -Name[lv]=Jauns privātais logs -Name[mai]=नया निज विंडो (W) -Name[mk]=Нов приватен прозорец -Name[ml]=പുതിയ സ്വകാര്യ ജാലകം -Name[mr]=नवीन वैयक्तिक पटल -Name[ms]=Tetingkap Persendirian Baharu -Name[my]=New Private Window -Name[nb-NO]=Nytt privat vindu -Name[ne-NP]=नयाँ निजी सञ्झ्याल -Name[nl]=Nieuw privévenster -Name[nn-NO]=Nytt privat vindauge -Name[or]=ନୂତନ ବ୍ୟକ୍ତିଗତ ୱିଣ୍ଡୋ -Name[pa-IN]=ਨਵੀਂ ਪ੍ਰਾਈਵੇਟ ਵਿੰਡੋ -Name[pl]=Nowe okno prywatne -Name[pt-BR]=Nova janela privativa -Name[pt-PT]=Nova janela privada -Name[rm]=Nova fanestra privata -Name[ro]=Fereastră privată nouă -Name[ru]=Новое приватное окно -Name[sat]=नावा निजेराक् विंडो (W ) -Name[si]=නව පුද්ගලික කවුළුව (W) -Name[sk]=Nové okno v režime Súkromné prehliadanie -Name[sl]=Novo zasebno okno -Name[son]=Sutura zanfun taaga -Name[sq]=Dritare e Re Private -Name[sr]=Нови приватан прозор -Name[sv-SE]=Nytt privat fönster -Name[ta]=புதிய தனிப்பட்ட சாளரம் -Name[te]=కొత్త ఆంతరంగిక విండో -Name[th]=หน้าต่างส่วนตัวใหม่ -Name[tr]=Yeni gizli pencere -Name[tsz]=Juchiiti eraatarakua jimpani -Name[uk]=Приватне вікно -Name[ur]=نیا نجی دریچہ -Name[uz]=Yangi maxfiy oyna -Name[vi]=Cửa sổ riêng tư mới -Name[wo]=Panlanteeru biir bu bees -Name[xh]=Ifestile yangasese entsha -Name[zh-CN]=新建隐私浏览窗口 -Name[zh-TW]=新增隱私視窗 -Exec=icecat-x11 --name icecat-x11 --private-window %u diff --git a/icecat-x11.sh.in b/icecat-x11.sh.in deleted file mode 100644 index e80fad2..0000000 --- a/icecat-x11.sh.in +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/bash -# -# Run GNU IceCat on X11 backend -# - -export MOZ_DISABLE_WAYLAND=1 -exec /__PREFIX__/bin/icecat "$@" diff --git a/icecat.spec b/icecat.spec index 10fa795..5a1f628 100644 --- a/icecat.spec +++ b/icecat.spec @@ -3,7 +3,7 @@ %global release_build 1 # Set new source-code build version for Fedora and, not necessarily, for upstream too -%global redhat_ver rh2 +%global redhat_ver rh1 ExcludeArch: %{ix86} %{arm} @@ -28,10 +28,11 @@ ExcludeArch: %{ix86} %{arm} # on other arches. %ifarch x86_64 %if 0%{?release_build} -%global build_with_pgo 0 -%global pgo_wayland 0 +%global build_with_pgo 1 +%global pgo_wayland 1 %else %global build_with_pgo 0 +%global pgo_wayland 0 %endif %endif @@ -45,7 +46,11 @@ ExcludeArch: %{ix86} %{arm} #################### # Active/Deactive language files handling -%global build_langpacks 1 +%bcond_without langpacks + +%if %{with langpacks} +%bcond_without langpacks_subpkg +%endif # Define installation directories %global icecatappdir %{_libdir}/%{name} @@ -105,7 +110,7 @@ ExcludeArch: %{ix86} %{arm} Name: icecat Epoch: 2 -Version: 115.18.0 +Version: 115.19.0 Release: %autorelease -e %{redhat_ver} Summary: GNU version of Firefox browser @@ -122,7 +127,7 @@ Source2: %{name}.png Source3: %{name}-mozconfig-common # Language files downloaded by source7 script -%if 0%{?build_langpacks} +%if %{with langpacks} Source4: %{name}-%{version}-langpacks.tar.gz %endif @@ -135,13 +140,9 @@ Source5: %{name}-COPYING-licensefiles.tar.gz Source7: %{name}-lang_download.sh # Desktop files -Source9: %{name}-wayland.desktop Source10: %{name}.appdata.xml -Source12: %{name}-wayland.sh.in Source13: %{name}.sh.in Source14: %{name}.desktop -Source15: %{name}-x11.sh.in -Source16: %{name}-x11.desktop # cbingen Source17: cbindgen-vendor.tar.xz @@ -311,6 +312,11 @@ Requires: fedora-bookmarks Suggests: mozilla-ublock-origin Provides: webclient +%if 0%{?fedora} >= 40 +Obsoletes: icecat-wayland < 2:115.19.0-1 +Obsoletes: icecat-x11 < 2:115.19.0-1 +%endif + %description GNU IceCat is the GNU version of the Firefox ESR browser. Extensions included to this version of IceCat: @@ -336,20 +342,16 @@ Extensions included to this version of IceCat: requested. This implies not downloading feeds, updates, blacklists or any other similar data needed during startup. -%package x11 -Summary: GNU IceCat X11 launcher -Requires: %{name}%{?_isa} -%description x11 -The %{name}-x11 package contains launcher and desktop file -to run GNU IceCat native on X11. - -%package wayland -Summary: GNU IceCat Wayland launcher -Requires: %{name}%{?_isa} -Obsoletes: %{name} < 0:78.6.1-1 -%description wayland -The icecat-wayland package contains launcher and desktop file -to run GNU IceCat native on Wayland. +%if %{with langpacks_subpkg} +%package langpacks +Summary: IceCat langpacks +Requires: %{name} = 2:%{version}-%{release} +%description langpacks +The icecat-langpacks package contains all the localization +and translations langpack add-ons. +%files langpacks -f %{name}.lang +%dir %{langpackdir} +%endif %prep %autosetup -N -n %{name}-%{version} @@ -471,7 +473,7 @@ echo "ac_add_options --disable-tests" >> .mozconfig echo "ac_add_options --disable-crashreporter" >> .mozconfig # Localization -%if 0%{?build_langpacks} +%if %{with langpacks} echo "ac_add_options --with-l10n-base=$PWD/l10n" >> .mozconfig %endif @@ -677,23 +679,10 @@ desktop-file-install --dir %{buildroot}%{_datadir}/applications %{SOURCE14} rm -rf %{buildroot}%{_bindir}/%{name} %{__sed} -e 's,/__PREFIX__,%{_prefix},g' %{SOURCE13} > %{buildroot}%{_bindir}/%{name} chmod 755 %{buildroot}%{_bindir}/%{name} - -%{__sed} -e 's,/__PREFIX__,%{_prefix},g' %{SOURCE15} > %{buildroot}%{_bindir}/%{name}-x11 -chmod 755 %{buildroot}%{_bindir}/%{name}-x11 -desktop-file-install --dir %{buildroot}%{_datadir}/applications %{SOURCE16} - -%{__sed} -e 's,/__PREFIX__,%{_prefix},g' %{SOURCE12} > %{buildroot}%{_bindir}/%{name}-wayland -chmod 755 %{buildroot}%{_bindir}/%{name}-wayland -desktop-file-install --dir %{buildroot}%{_datadir}/applications %{SOURCE9} - # -# Install man page -#mkdir -p %%{buildroot}%%{_mandir}/man1 -#install -p -m 644 %%{name}.1 %%{buildroot}%%{_mandir}/man1/ - ##Extract langpacks, make any mods needed, repack the langpack, and install it. -%if 0%{?build_langpacks} +%if %{with langpacks} echo > %{name}.lang mkdir -p %{buildroot}%{langpackdir} tar xf %{SOURCE4} @@ -793,10 +782,10 @@ end appstream-util validate-relax --nonet %{buildroot}%{_metainfodir}/*.appdata.xml desktop-file-validate %{buildroot}%{_datadir}/applications/*.desktop -%if 0%{?build_langpacks} -%files -f %{name}.lang -%else +%if %{with langpacks_subpkg} %files +%else +%files -f %{name}.lang %endif %doc README.* AUTHORS %license LICENSE COPYING-* @@ -820,17 +809,11 @@ desktop-file-validate %{buildroot}%{_datadir}/applications/*.desktop %{icecatappdir}/plugin-container %{icecatappdir}/pingsender %{icecatappdir}/gmp-clearkey/ -%if 0%{?build_langpacks} +%if %{without langpacks_subpkg} +%if %{with langpacks} %dir %{langpackdir} %endif - -%files x11 -%{_bindir}/%{name}-x11 -%{_datadir}/applications/%{name}-x11.desktop - -%files wayland -%{_bindir}/%{name}-wayland -%{_datadir}/applications/%{name}-wayland.desktop +%endif %changelog %autochangelog diff --git a/sources b/sources index 0b0c6f8..bd92d25 100644 --- a/sources +++ b/sources @@ -1,5 +1,5 @@ SHA512 (cbindgen-vendor.tar.xz) = e229f15cb3d9213413ea4793478458887167f9c78943a6fd0e0c967a78c45457ffb8c4d933096b338e1dcf9a3c81931b6eaa4fdfb46d342ac1f3c251c99cd0d5 -SHA512 (icecat-115.18.0-langpacks.tar.gz) = f0fd3cd553994cd9380d5898cce7360eab2cd80a277a906ac0e3287077f328d6f74759b2a4f48e382104f87c9f3d7ba30ac7a3ef05802b7721399478bcb7423f -SHA512 (icecat-115.18.0-rh2.tar.bz2) = 270ad24f00feb1a8a23285323a41a23a4e42987ccb8f5c06b156e27795873af1812521121ec8c68d95337233a4f4a6b9f01b16e23b49a8a4a83b1fcc890d1003 +SHA512 (icecat-115.19.0-langpacks.tar.gz) = ca3d6446e4a140369cd788a3ab790f2084b297c62754118fd3714fb03fe54a62494c0d762c774087d74545b061922beef59414df3dec7ff9ff991ddefe68efec +SHA512 (icecat-115.19.0-rh1.tar.bz2) = 43ef502eccd1c1777d860165681781eb0702f0a968a7701c6230c81930c80f972dc20cdce5b023b4caabe3f12b22095fac15d512ec430f3917ff4d5d299b4c07 SHA512 (icecat-COPYING-licensefiles.tar.gz) = ed541845170f1d209e322b0def3248d571e0c42c4a17c74e83197e743bd8a128a1475f5312d905c8e70d047eddeac17e604373892eb6d5f1720c5c361849c42c SHA512 (icecat.png) = a3cec16cb15a27c3c91b53e2c534e78b07911011ff1331e450c0baf8e13b76da7cea2a90e5d75191fa88cfbfd40a0a7f3e553e92b64d0043dadd5ad5edfdf81c From 8aae756e78230300b2c29198b857869ad424db89 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Fri, 10 Jan 2025 12:20:44 +0100 Subject: [PATCH 37/99] Add missing BR pciutils-libs --- icecat.spec | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/icecat.spec b/icecat.spec index 5a1f628..de1ae1a 100644 --- a/icecat.spec +++ b/icecat.spec @@ -54,12 +54,12 @@ ExcludeArch: %{ix86} %{arm} # Define installation directories %global icecatappdir %{_libdir}/%{name} -%global icecat_ver %{name}-%{version} -%global icecat_devel %{name}-devel-%{version} - # Define language files directory %global langpackdir %{icecatappdir}/langpacks +%global icecat_ver %{name}-%{version} +%global icecat_devel %{name}-devel-%{version} + %global toolkit_gtk3 1 # Big endian platforms @@ -97,11 +97,7 @@ ExcludeArch: %{ix86} %{arm} %global disable_elfhack 1 # Use clang? -%if 0%{?fedora} > 39 %global build_with_clang 1 -%else -%global build_with_clang 0 -%endif # https://bugzilla.redhat.com/show_bug.cgi?id=1908792 # https://bugzilla.redhat.com/show_bug.cgi?id=2255254 @@ -253,6 +249,7 @@ BuildRequires: nss-static >= %{nss_version} %endif BuildRequires: pango-devel +BuildRequires: pciutils-libs BuildRequires: pipewire-devel BuildRequires: python3-devel BuildRequires: python3-setuptools @@ -811,7 +808,7 @@ desktop-file-validate %{buildroot}%{_datadir}/applications/*.desktop %{icecatappdir}/gmp-clearkey/ %if %{without langpacks_subpkg} %if %{with langpacks} -%dir %{langpackdir} +%dir %{icecatappdir}/langpacks %endif %endif From e29d8d6633f45fcbdcae2d6b8f3cb94b86733c25 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Fri, 10 Jan 2025 21:40:17 +0100 Subject: [PATCH 38/99] Disable PGO at all --- icecat.spec | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/icecat.spec b/icecat.spec index de1ae1a..d799d89 100644 --- a/icecat.spec +++ b/icecat.spec @@ -28,8 +28,8 @@ ExcludeArch: %{ix86} %{arm} # on other arches. %ifarch x86_64 %if 0%{?release_build} -%global build_with_pgo 1 -%global pgo_wayland 1 +%global build_with_pgo 0 +%global pgo_wayland 0 %else %global build_with_pgo 0 %global pgo_wayland 0 @@ -77,11 +77,7 @@ ExcludeArch: %{ix86} %{arm} %if %{?system_nss} %global nspr_version 4.32 %global nspr_build_version %{nspr_version} -%if 0%{?fedora} > 39 %global nss_version 3.100 -%else -%global nss_version 3.99 -%endif %global nss_build_version %{nss_version} %endif @@ -190,6 +186,7 @@ Patch423: mozilla-1512162.patch # PGO/LTO patches Patch600: %{name}-pgo.patch Patch602: mozilla-1516803.patch +Patch603: %{name}-gcc-always-inline.patch BuildRequires: alsa-lib-devel BuildRequires: autoconf213 @@ -393,6 +390,7 @@ tar -xf %{SOURCE5} %patch -P 602 -p 1 -b .1516803 %endif %endif +%patch -P 603 -p1 -b .inline # Remove default configuration and copy the customized one rm -f .mozconfig @@ -679,8 +677,8 @@ chmod 755 %{buildroot}%{_bindir}/%{name} # ##Extract langpacks, make any mods needed, repack the langpack, and install it. -%if %{with langpacks} echo > %{name}.lang +%if %{with langpacks} mkdir -p %{buildroot}%{langpackdir} tar xf %{SOURCE4} for langpack in `ls langpacks/*.xpi`; do From 8c80932926f9a8cef446b522407046bebaa6ded6 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Fri, 10 Jan 2025 21:44:42 +0100 Subject: [PATCH 39/99] Disable PGO at all --- icecat-gcc-always-inline.patch | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 icecat-gcc-always-inline.patch diff --git a/icecat-gcc-always-inline.patch b/icecat-gcc-always-inline.patch new file mode 100644 index 0000000..d7af60f --- /dev/null +++ b/icecat-gcc-always-inline.patch @@ -0,0 +1,14 @@ +diff -up firefox-114.0.2/gfx/wr/swgl/src/gl.cc.inline firefox-114.0.2/gfx/wr/swgl/src/gl.cc +--- firefox-114.0.2/gfx/wr/swgl/src/gl.cc.inline 2023-06-22 11:08:53.294593327 +0200 ++++ firefox-114.0.2/gfx/wr/swgl/src/gl.cc 2023-06-22 11:12:43.663486734 +0200 +@@ -58,9 +58,7 @@ WINBASEAPI BOOL WINAPI QueryPerformanceF + } + + #else +-// GCC is slower when dealing with always_inline, especially in debug builds. +-// When using Clang, use always_inline more aggressively. +-# if defined(__clang__) || defined(NDEBUG) ++# if defined(__clang__) || defined (__GNUC__) || defined(NDEBUG) + # define ALWAYS_INLINE __attribute__((always_inline)) inline + # else + # define ALWAYS_INLINE inline From 20f4ffff0744314985f86300d12d0908938314fc Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Fri, 10 Jan 2025 21:52:34 +0100 Subject: [PATCH 40/99] Require icu on s390x only --- icecat.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/icecat.spec b/icecat.spec index d799d89..7354a0b 100644 --- a/icecat.spec +++ b/icecat.spec @@ -63,7 +63,7 @@ ExcludeArch: %{ix86} %{arm} %global toolkit_gtk3 1 # Big endian platforms -%ifarch %{power64} s390x +%ifarch s390x # Javascript Intl API is not supported on big endian platforms right now: # https://bugzilla.mozilla.org/show_bug.cgi?id=1322212 %global big_endian 1 From a4318122caca199511f1150f59520684057ad5c7 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Sat, 11 Jan 2025 14:44:19 +0100 Subject: [PATCH 41/99] Drop some obsolete conditions --- icecat.spec | 20 ++++---------------- 1 file changed, 4 insertions(+), 16 deletions(-) diff --git a/icecat.spec b/icecat.spec index 7354a0b..6fd0a61 100644 --- a/icecat.spec +++ b/icecat.spec @@ -20,10 +20,6 @@ ExcludeArch: %{ix86} %{arm} # Downgrade optimization %global less_optbuild 0 -# Use mozilla hardening option? -%global hardened_build 1 -#################### - # Build PGO+LTO on x86_64 and aarch64 only due to build issues # on other arches. %ifarch x86_64 @@ -452,7 +448,6 @@ echo "ac_add_options --enable-rust-debug" >> .mozconfig %else %global optimize_flags "none" %ifarch s390x -# ARMv7 need that (rhbz#1426850) %define optimize_flags " -fno-schedule-insns" %endif %if %{?optimize_flags} != "none" @@ -551,11 +546,6 @@ MOZ_OPT_FLAGS=$(echo "$MOZ_OPT_FLAGS" | %{__sed} -e 's/-O2/-O0/') # Workaround for mozbz#1531309 MOZ_OPT_FLAGS=$(echo "$MOZ_OPT_FLAGS" | %{__sed} -e 's/-Werror=format-security//') -# Use hardened build? -%if %{?hardened_build} -MOZ_OPT_FLAGS="$MOZ_OPT_FLAGS -fPIC -Wl,-z,relro -Wl,-z,now" -%endif - %ifarch s390x MOZ_OPT_FLAGS=$(echo "$MOZ_OPT_FLAGS" | %{__sed} -e 's/-g/-g1/') # If MOZ_DEBUG_FLAGS is empty, firefox's build will default it to "-g" which @@ -611,7 +601,7 @@ MOZ_SMP_FLAGS=-j1 RPM_BUILD_NCPUS="`/usr/bin/getconf _NPROCESSORS_ONLN`" [ "$RPM_BUILD_NCPUS" -ge 2 ] && MOZ_SMP_FLAGS=-j2 %endif -%ifarch x86_64 ppc ppc64 ppc64le +%ifarch x86_64 %{power64} [ -z "$RPM_BUILD_NCPUS" ] && \ RPM_BUILD_NCPUS="`/usr/bin/getconf _NPROCESSORS_ONLN`" [ "$RPM_BUILD_NCPUS" -ge 2 ] && MOZ_SMP_FLAGS=-j2 @@ -789,6 +779,9 @@ desktop-file-validate %{buildroot}%{_datadir}/applications/*.desktop %{_datadir}/icons/hicolor/*x*/apps/%{name}*.png %{_metainfodir}/*.appdata.xml %dir %{icecatappdir} +%if %{with langpacks} +%dir %{langpackdir} +%endif %{icecatappdir}/glxtest %{icecatappdir}/vaapitest %{icecatappdir}/browser/ @@ -804,11 +797,6 @@ desktop-file-validate %{buildroot}%{_datadir}/applications/*.desktop %{icecatappdir}/plugin-container %{icecatappdir}/pingsender %{icecatappdir}/gmp-clearkey/ -%if %{without langpacks_subpkg} -%if %{with langpacks} -%dir %{icecatappdir}/langpacks -%endif -%endif %changelog %autochangelog From 6b3f455d4ff07f7cde145d747e6e0c2600d5cf1c Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Sat, 11 Jan 2025 17:37:27 +0100 Subject: [PATCH 42/99] Revert commit 20f4fff --- icecat.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/icecat.spec b/icecat.spec index 6fd0a61..c0f7e45 100644 --- a/icecat.spec +++ b/icecat.spec @@ -59,7 +59,7 @@ ExcludeArch: %{ix86} %{arm} %global toolkit_gtk3 1 # Big endian platforms -%ifarch s390x +%ifarch s390x %{power64} # Javascript Intl API is not supported on big endian platforms right now: # https://bugzilla.mozilla.org/show_bug.cgi?id=1322212 %global big_endian 1 From 08d4b41252f5b61718e0b4a9cce161d60572a6e6 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 17 Jan 2025 06:56:06 +0000 Subject: [PATCH 43/99] Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild From 5f9ce733b72c40176bf76eed7bb8e0a01ae39dc7 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Fri, 17 Jan 2025 12:55:09 +0100 Subject: [PATCH 44/99] Fix GCC15 builds --- icecat.spec | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/icecat.spec b/icecat.spec index c0f7e45..4e173d4 100644 --- a/icecat.spec +++ b/icecat.spec @@ -554,7 +554,7 @@ MOZ_OPT_FLAGS=$(echo "$MOZ_OPT_FLAGS" | %{__sed} -e 's/-g/-g1/') export MOZ_DEBUG_FLAGS=" " %endif -# We don't wantfirefox to use CK_GCM_PARAMS_V3 in nss +# We don't want firefox to use CK_GCM_PARAMS_V3 in nss MOZ_OPT_FLAGS="$MOZ_OPT_FLAGS -DNSS_PKCS11_3_0_STRICT" %if !0%{?build_with_clang} @@ -566,8 +566,8 @@ MOZ_LINK_FLAGS="-Wl,--no-keep-memory -Wl,--reduce-memory-overheads -Wl,--print-m export RUSTFLAGS="-Cdebuginfo=0" %endif -export CFLAGS=$MOZ_OPT_FLAGS -export CXXFLAGS="$MOZ_OPT_FLAGS -fpermissive" +export CFLAGS="$MOZ_OPT_FLAGS -std=gnu17" +export CXXFLAGS="$MOZ_OPT_FLAGS -fpermissive -std=gnu17" export LDFLAGS=$MOZ_LINK_FLAGS export PREFIX='%{_prefix}' From 8e609e5072db70c7e4ab4625abd511a10ad5b3cd Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Thu, 23 Jan 2025 19:25:51 +0100 Subject: [PATCH 45/99] Try to build with GCC --- icecat.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/icecat.spec b/icecat.spec index 4e173d4..e6337d6 100644 --- a/icecat.spec +++ b/icecat.spec @@ -89,7 +89,7 @@ ExcludeArch: %{ix86} %{arm} %global disable_elfhack 1 # Use clang? -%global build_with_clang 1 +%global build_with_clang 0 # https://bugzilla.redhat.com/show_bug.cgi?id=1908792 # https://bugzilla.redhat.com/show_bug.cgi?id=2255254 @@ -567,7 +567,7 @@ export RUSTFLAGS="-Cdebuginfo=0" %endif export CFLAGS="$MOZ_OPT_FLAGS -std=gnu17" -export CXXFLAGS="$MOZ_OPT_FLAGS -fpermissive -std=gnu17" +export CXXFLAGS="$MOZ_OPT_FLAGS -fpermissive -std=gnu++17" export LDFLAGS=$MOZ_LINK_FLAGS export PREFIX='%{_prefix}' From 8b817ce1187d522ccb9d60c5fb66e51a07f2e933 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Fri, 31 Jan 2025 21:25:18 +0100 Subject: [PATCH 46/99] Return to clang --- icecat.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/icecat.spec b/icecat.spec index e6337d6..9866148 100644 --- a/icecat.spec +++ b/icecat.spec @@ -89,7 +89,7 @@ ExcludeArch: %{ix86} %{arm} %global disable_elfhack 1 # Use clang? -%global build_with_clang 0 +%global build_with_clang 1 # https://bugzilla.redhat.com/show_bug.cgi?id=1908792 # https://bugzilla.redhat.com/show_bug.cgi?id=2255254 From 9f2bc0fee055d5c3b51d34a98d5ac0e54c97fc63 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Fri, 31 Jan 2025 22:22:46 +0100 Subject: [PATCH 47/99] Update to cbindgen-0.28.0 --- sources | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sources b/sources index bd92d25..5d7cfcf 100644 --- a/sources +++ b/sources @@ -1,4 +1,4 @@ -SHA512 (cbindgen-vendor.tar.xz) = e229f15cb3d9213413ea4793478458887167f9c78943a6fd0e0c967a78c45457ffb8c4d933096b338e1dcf9a3c81931b6eaa4fdfb46d342ac1f3c251c99cd0d5 +SHA512 (cbindgen-vendor.tar.xz) = 662fbf92c54e9c044d639bf6b3243ffcfd73c737967517f66e41f193c798d475ad4526f53ebcf57587f10ba01e0ebd3b63bad2bd2942c728f2d77b03e83faaa8 SHA512 (icecat-115.19.0-langpacks.tar.gz) = ca3d6446e4a140369cd788a3ab790f2084b297c62754118fd3714fb03fe54a62494c0d762c774087d74545b061922beef59414df3dec7ff9ff991ddefe68efec SHA512 (icecat-115.19.0-rh1.tar.bz2) = 43ef502eccd1c1777d860165681781eb0702f0a968a7701c6230c81930c80f972dc20cdce5b023b4caabe3f12b22095fac15d512ec430f3917ff4d5d299b4c07 SHA512 (icecat-COPYING-licensefiles.tar.gz) = ed541845170f1d209e322b0def3248d571e0c42c4a17c74e83197e743bd8a128a1475f5312d905c8e70d047eddeac17e604373892eb6d5f1720c5c361849c42c From f143d871a03d4895671b5241a2c2cf54d860803d Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Fri, 31 Jan 2025 22:45:10 +0100 Subject: [PATCH 48/99] Try to use system cbindgen --- icecat.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/icecat.spec b/icecat.spec index 9866148..7ba7216 100644 --- a/icecat.spec +++ b/icecat.spec @@ -9,7 +9,7 @@ ExcludeArch: %{ix86} %{arm} # Bundled cbindgen makes build slow. # Enable only if system cbindgen is not available. -%global use_bundled_cbindgen 1 +%global use_bundled_cbindgen 0 #################### From 576f5d64b7908003ad49f179b4a7d951867a1279 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Fri, 31 Jan 2025 23:09:40 +0100 Subject: [PATCH 49/99] Fix mozilla #1912663 --- icecat-115.19.0-fix_mz1912663.patch | 82 +++++++++++++++++++++++++++++ icecat.spec | 2 + 2 files changed, 84 insertions(+) create mode 100644 icecat-115.19.0-fix_mz1912663.patch diff --git a/icecat-115.19.0-fix_mz1912663.patch b/icecat-115.19.0-fix_mz1912663.patch new file mode 100644 index 0000000..2168003 --- /dev/null +++ b/icecat-115.19.0-fix_mz1912663.patch @@ -0,0 +1,82 @@ +# HG changeset patch +# User Emilio Cobos Álvarez +# Date 1723389149 0 +# Node ID 0e6f95e0b777abd64b1224c28ecd1beb614035cf +# Parent ac782ec8027890a85265514cef6b564f07b18a71 +Bug 1912663 - Fix some build issues with cbindgen 0.27. r=firefox-style-system-reviewers,zrhoffman a=pascalc + +It updates serde and syn and they are more strict. In particular, syn 2 +doesn't parse the rust 2015 syntax where try is not a keyword, and serde +rejects duplicate keys. + +Differential Revision: https://phabricator.services.mozilla.com/D219025 + +diff --git a/servo/components/style_traits/values.rs b/servo/components/style_traits/values.rs +--- a/servo/components/style_traits/values.rs ++++ b/servo/components/style_traits/values.rs +@@ -384,21 +384,21 @@ impl Separator for Space { + + fn parse<'i, 't, F, T, E>( + input: &mut Parser<'i, 't>, + mut parse_one: F, + ) -> Result, ParseError<'i, E>> + where + F: for<'tt> FnMut(&mut Parser<'i, 'tt>) -> Result>, + { +- input.skip_whitespace(); // Unnecessary for correctness, but may help try() rewind less. ++ input.skip_whitespace(); // Unnecessary for correctness, but may help try_parse() rewind less. + let mut results = vec![parse_one(input)?]; + loop { +- input.skip_whitespace(); // Unnecessary for correctness, but may help try() rewind less. +- if let Ok(item) = input.try(&mut parse_one) { ++ input.skip_whitespace(); // Unnecessary for correctness, but may help try_parse() rewind less. ++ if let Ok(item) = input.try_parse(&mut parse_one) { + results.push(item); + } else { + return Ok(results); + } + } + } + } + +@@ -409,24 +409,24 @@ impl Separator for CommaWithSpace { + + fn parse<'i, 't, F, T, E>( + input: &mut Parser<'i, 't>, + mut parse_one: F, + ) -> Result, ParseError<'i, E>> + where + F: for<'tt> FnMut(&mut Parser<'i, 'tt>) -> Result>, + { +- input.skip_whitespace(); // Unnecessary for correctness, but may help try() rewind less. ++ input.skip_whitespace(); // Unnecessary for correctness, but may help try_parse() rewind less. + let mut results = vec![parse_one(input)?]; + loop { +- input.skip_whitespace(); // Unnecessary for correctness, but may help try() rewind less. ++ input.skip_whitespace(); // Unnecessary for correctness, but may help try_parse() rewind less. + let comma_location = input.current_source_location(); +- let comma = input.try(|i| i.expect_comma()).is_ok(); +- input.skip_whitespace(); // Unnecessary for correctness, but may help try() rewind less. +- if let Ok(item) = input.try(&mut parse_one) { ++ let comma = input.try_parse(|i| i.expect_comma()).is_ok(); ++ input.skip_whitespace(); // Unnecessary for correctness, but may help try_parse() rewind less. ++ if let Ok(item) = input.try_parse(&mut parse_one) { + results.push(item); + } else if comma { + return Err(comma_location.new_unexpected_token_error(Token::Comma)); + } else { + break; + } + } + Ok(results) +diff --git a/servo/ports/geckolib/cbindgen.toml b/servo/ports/geckolib/cbindgen.toml +--- a/servo/ports/geckolib/cbindgen.toml ++++ b/servo/ports/geckolib/cbindgen.toml +@@ -318,7 +318,6 @@ + "Keyframe" = "Keyframe" + "nsChangeHint" = "nsChangeHint" + "ServoElementSnapshotTable" = "ServoElementSnapshotTable" +-"Keyframe" = "Keyframe" + "ComputedKeyframeValues" = "ComputedKeyframeValues" + "OriginFlags" = "OriginFlags" + "ServoTraversalFlags" = "ServoTraversalFlags" diff --git a/icecat.spec b/icecat.spec index 7ba7216..a5ffa50 100644 --- a/icecat.spec +++ b/icecat.spec @@ -175,6 +175,7 @@ Patch403: icecat-python3.11-open-U.patch Patch404: icecat-python3.11-regex-inline-flags.patch Patch412: mozilla-1337988.patch Patch422: mozilla-1580174-webrtc-popup.patch +Patch425: icecat-115.19.0-fix_mz1912663.patch # Fix crash on ppc64le (mozilla#1512162) Patch423: mozilla-1512162.patch @@ -376,6 +377,7 @@ tar -xf %{SOURCE5} %ifarch %{power64} %patch -P 423 -p 1 -b .1512162 %endif +%patch -P 425 -p 1 -b .1912663 %patch -P 54 -p 1 -b .1669639 From 48814c09711ba06bd8443d16adb5a2e9d35417fd Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Fri, 31 Jan 2025 23:38:19 +0100 Subject: [PATCH 50/99] Fix mozilla #1917964 --- icecat-115.19.0-fix_mz1917964.patch | 327 ++++++++++++++++++++++++++++ icecat.spec | 4 + 2 files changed, 331 insertions(+) create mode 100644 icecat-115.19.0-fix_mz1917964.patch diff --git a/icecat-115.19.0-fix_mz1917964.patch b/icecat-115.19.0-fix_mz1917964.patch new file mode 100644 index 0000000..935485d --- /dev/null +++ b/icecat-115.19.0-fix_mz1917964.patch @@ -0,0 +1,327 @@ +# HG changeset patch +# User Lee Salzman +# Date 1726239330 0 +# Node ID d36ca9941b2f90d910854e38293875e32c49796b +# Parent 156543617de576c07a7914dd20d13692ddb0845a +Bug 1917964 - Use __builtin_convertvector and __builtin_shufflevector on GCC when available. r=aosmond + +GCC upstream recommends we use __builtin_convertvector and __builtin_shufflevector instead of __builtin_shuffle +for better code generation. + +See: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116666#c7 + +Differential Revision: https://phabricator.services.mozilla.com/D222067 + +diff --git a/gfx/wr/swgl/src/vector_type.h b/gfx/wr/swgl/src/vector_type.h +--- a/gfx/wr/swgl/src/vector_type.h ++++ b/gfx/wr/swgl/src/vector_type.h +@@ -89,16 +89,25 @@ template <> + struct VectorMask { + typedef int8_t type; + }; + template <> + struct VectorMask { + typedef int type; + }; + ++# ifdef __has_builtin ++# if __has_builtin(__builtin_convertvector) ++# define HAS_BUILTIN_CONVERTVECTOR ++# endif ++# if __has_builtin(__builtin_shufflevector) ++# define HAS_BUILTIN_SHUFFLEVECTOR ++# endif ++# endif ++ + template + struct VectorType { + enum { SIZE = N }; + + typedef T data_type __attribute__((vector_size(sizeof(T) * N))); + typedef typename VectorMask::type mask_index; + typedef mask_index mask_type + __attribute__((vector_size(sizeof(mask_index) * N))); +@@ -131,16 +140,23 @@ struct VectorType { + VectorType v; + v.data = data; + return v; + } + + T& operator[](size_t i) { return elements[i]; } + T operator[](size_t i) const { return elements[i]; } + ++# ifdef HAS_BUILTIN_CONVERTVECTOR ++ template ++ operator VectorType() const { ++ return VectorType::wrap( ++ __builtin_convertvector(data, typename VectorType::data_type)); ++ } ++# else + template + operator VectorType() const { + return VectorType::wrap( + (typename VectorType::data_type){U(x), U(y)}); + } + template + operator VectorType() const { + return VectorType::wrap( +@@ -168,16 +184,17 @@ struct VectorType { + U(elements[10]), + U(elements[11]), + U(elements[12]), + U(elements[13]), + U(elements[14]), + U(elements[15]), + }); + } ++# endif + + VectorType operator-() const { return wrap(-data); } + VectorType operator~() const { return wrap(~data); } + + VectorType operator&(VectorType x) const { return wrap(data & x.data); } + VectorType operator&(T x) const { return wrap(data & x); } + VectorType operator|(VectorType x) const { return wrap(data | x.data); } + VectorType operator|(T x) const { return wrap(data | x); } +@@ -263,110 +280,107 @@ struct VectorType { + VectorType operator&&(VectorType x) const { return wrap(data & x.data); } + VectorType operator||(VectorType x) const { return wrap(data | x.data); } + + VectorType& operator=(VectorType x) { + data = x.data; + return *this; + } + +- VectorType shuffle(VectorType b, mask_index x, mask_index y, +- mask_index z, mask_index w) const { +- return VectorType::wrap(__builtin_shuffle( +- data, b.data, (typename VectorType::mask_type){x, y, z, w})); +- } +- VectorType shuffle(VectorType b, mask_index x, mask_index y, +- mask_index z, mask_index w, mask_index s, +- mask_index t, mask_index u, mask_index v) const { +- return VectorType::wrap(__builtin_shuffle( +- data, b.data, +- (typename VectorType::mask_type){x, y, z, w, s, t, u, v})); +- } +- VectorType shuffle(VectorType b, mask_index x, mask_index y, +- mask_index z, mask_index w, mask_index s, +- mask_index t, mask_index u, mask_index v, +- mask_index i, mask_index j, mask_index k, +- mask_index l, mask_index m, mask_index n, +- mask_index o, mask_index p) const { +- return VectorType::wrap( +- __builtin_shuffle(data, b.data, +- (typename VectorType::mask_type){ +- x, y, z, w, s, t, u, v, i, j, k, l, m, n, o, p})); +- } +- +- VectorType swizzle(mask_index x, mask_index y, mask_index z, +- mask_index w) const { +- return VectorType::wrap(__builtin_shuffle( +- data, (typename VectorType::mask_type){x, y, z, w})); +- } +- VectorType swizzle(mask_index x, mask_index y, mask_index z, +- mask_index w, mask_index s, mask_index t, +- mask_index u, mask_index v) const { +- return VectorType::wrap(__builtin_shuffle( +- data, (typename VectorType::mask_type){x, y, z, w, s, t, u, v})); +- } +- + SI VectorType wrap(half_type low, half_type high) { + VectorType v; + v.low_half = low; + v.high_half = high; + return v; + } + + VectorType combine(VectorType high) const { + return VectorType::wrap(data, high.data); + } + +-# define xxxx swizzle(0, 0, 0, 0) +-# define yyyy swizzle(1, 1, 1, 1) +-# define zzzz swizzle(2, 2, 2, 2) +-# define wwww swizzle(3, 3, 3, 3) +-# define xxyy swizzle(0, 0, 1, 1) +-# define xxzz swizzle(0, 0, 2, 2) +-# define yyww swizzle(1, 1, 3, 3) +-# define zzww swizzle(2, 2, 3, 3) +-# define xyxy swizzle(0, 1, 0, 1) +-# define xzxz swizzle(0, 2, 0, 2) +-# define ywyw swizzle(1, 3, 1, 3) +-# define zwzw swizzle(2, 3, 2, 3) +-# define zwxy swizzle(2, 3, 0, 1) +-# define zyxw swizzle(2, 1, 0, 3) +-# define xxyz swizzle(0, 0, 1, 2) +-# define xyyz swizzle(0, 1, 1, 2) +-# define xyzz swizzle(0, 1, 2, 2) +-# define xzyw swizzle(0, 2, 1, 3) +-# define yzwx swizzle(1, 2, 3, 0) +-# define wxyz swizzle(3, 0, 1, 2) +-# define wzyx swizzle(3, 2, 1, 0) +-# define xxxxyyyy XXXXYYYY() +- VectorType XXXXYYYY() const { +- return swizzle(0, 0, 0, 0).combine(swizzle(1, 1, 1, 1)); ++# ifdef HAS_BUILTIN_SHUFFLEVECTOR ++ template ++ VectorType shuffle(VectorType b) const { ++ return VectorType::wrap( ++ __builtin_shufflevector(data, b.data, INDEXES...)); ++ } ++ ++ template ++ VectorType swizzle() const { ++ return VectorType::wrap( ++ __builtin_shufflevector(data, data, INDEXES...)); ++ } ++# else ++ template ++ VectorType shuffle(VectorType b) const { ++ return VectorType::wrap(__builtin_shuffle( ++ data, b.data, (typename VectorType::mask_type){INDEXES...})); ++ } ++ ++ template ++ VectorType shuffle(VectorType b) const { ++ return shuffle(b).combine(shuffle(b)); ++ } ++ ++ template ++ VectorType shuffle(VectorType b) const { ++ return shuffle(b).combine( ++ shuffle(b)); + } +-# define zzzzwwww ZZZZWWWW() +- VectorType ZZZZWWWW() const { +- return swizzle(2, 2, 2, 2).combine(swizzle(3, 3, 3, 3)); ++ ++ template ++ VectorType shuffle(VectorType b) const { ++ return shuffle(b).combine( ++ shuffle(b)); + } +-# define xyzwxyzw XYZWXYZW() +- VectorType XYZWXYZW() const { return combine(*this); } +-# define xyxyxyxy XYXYXYXY() +- VectorType XYXYXYXY() const { +- return swizzle(0, 1, 0, 1).combine(swizzle(0, 1, 0, 1)); ++ ++ template ++ VectorType swizzle() const { ++ return shuffle(*this); + } +-# define zwzwzwzw ZWZWZWZW() +- VectorType ZWZWZWZW() const { +- return swizzle(2, 3, 2, 3).combine(swizzle(2, 3, 2, 3)); +- } +-# define xxyyzzww XXYYZZWW() +- VectorType XXYYZZWW() const { +- return swizzle(0, 0, 1, 1).combine(swizzle(2, 2, 3, 3)); +- } +-# define xxxxyyyyzzzzwwww XXXXYYYYZZZZWWWW() +- VectorType XXXXYYYYZZZZWWWW() { +- return XXXXYYYY().combine(ZZZZWWWW()); +- } ++# endif ++ ++# define SWIZZLE(...) template swizzle<__VA_ARGS__>() ++ ++# define xxxx SWIZZLE(0, 0, 0, 0) ++# define yyyy SWIZZLE(1, 1, 1, 1) ++# define zzzz SWIZZLE(2, 2, 2, 2) ++# define wwww SWIZZLE(3, 3, 3, 3) ++# define xxyy SWIZZLE(0, 0, 1, 1) ++# define xxzz SWIZZLE(0, 0, 2, 2) ++# define yyww SWIZZLE(1, 1, 3, 3) ++# define zzww SWIZZLE(2, 2, 3, 3) ++# define xyxy SWIZZLE(0, 1, 0, 1) ++# define xzxz SWIZZLE(0, 2, 0, 2) ++# define ywyw SWIZZLE(1, 3, 1, 3) ++# define zwzw SWIZZLE(2, 3, 2, 3) ++# define zwxy SWIZZLE(2, 3, 0, 1) ++# define zyxw SWIZZLE(2, 1, 0, 3) ++# define xxyz SWIZZLE(0, 0, 1, 2) ++# define xyyz SWIZZLE(0, 1, 1, 2) ++# define xyzz SWIZZLE(0, 1, 2, 2) ++# define xzyw SWIZZLE(0, 2, 1, 3) ++# define yzwx SWIZZLE(1, 2, 3, 0) ++# define wxyz SWIZZLE(3, 0, 1, 2) ++# define wzyx SWIZZLE(3, 2, 1, 0) ++# define xxxxyyyy SWIZZLE(0, 0, 0, 0, 1, 1, 1, 1) ++# define zzzzwwww SWIZZLE(2, 2, 2, 2, 3, 3, 3, 3) ++# define xyzwxyzw SWIZZLE(0, 1, 2, 3, 0, 1, 2, 3) ++# define xyxyxyxy SWIZZLE(0, 1, 0, 1, 0, 1, 0, 1) ++# define zwzwzwzw SWIZZLE(2, 3, 2, 3, 2, 3, 2, 3) ++# define xxyyzzww SWIZZLE(0, 0, 1, 1, 2, 2, 3, 3) ++# define xxxxyyyyzzzzwwww \ ++ SWIZZLE(0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3) + }; + + template + struct VectorType { + typedef T data_type __attribute__((vector_size(sizeof(T) * 2))); + union { + data_type data; + struct { +@@ -383,17 +397,17 @@ struct VectorType { + + VectorType operator&(VectorType x) const { return wrap(data & x.data); } + VectorType operator&(T x) const { return wrap(data & x); } + VectorType operator|(VectorType x) const { return wrap(data | x.data); } + VectorType operator|(T x) const { return wrap(data | x); } + }; + + # define CONVERT(vector, type) ((type)(vector)) +-# define SHUFFLE(a, b, ...) a.shuffle(b, __VA_ARGS__) ++# define SHUFFLE(a, b, ...) ((a).template shuffle<__VA_ARGS__>(b)) + + template + SI VectorType combine(VectorType a, VectorType b) { + return VectorType::wrap(a.data, b.data); + } + + template + SI VectorType lowHalf(VectorType a) { +@@ -473,32 +487,25 @@ SI VectorType zip2Low(VectorType + SI VectorType zip2High(VectorType a, VectorType b) { + return SHUFFLE(a, b, 4, 5, 12, 13, 6, 7, 14, 15); + } + +-#ifdef __clang__ + template + SI VectorType zip(VectorType a, VectorType b) { + return SHUFFLE(a, b, 0, 4, 1, 5, 2, 6, 3, 7); + } + + template + SI VectorType zip(VectorType a, VectorType b) { + return SHUFFLE(a, b, 0, 8, 1, 9, 2, 10, 3, 11, 4, 12, 5, 13, 6, 14, 7, 15); + } +-#else +-template +-SI VectorType zip(VectorType a, VectorType b) { +- return combine(zipLow(a, b), zipHigh(a, b)); +-} +-#endif + + template + struct Unaligned { + template + SI T load(const P* p) { + T v; + memcpy(&v, p, sizeof(v)); + return v; + + diff --git a/icecat.spec b/icecat.spec index a5ffa50..e755951 100644 --- a/icecat.spec +++ b/icecat.spec @@ -176,6 +176,8 @@ Patch404: icecat-python3.11-regex-inline-flags.patch Patch412: mozilla-1337988.patch Patch422: mozilla-1580174-webrtc-popup.patch Patch425: icecat-115.19.0-fix_mz1912663.patch +# Patch for GCC-15 +Patch426: icecat-115.19.0-fix_mz1917964.patch # Fix crash on ppc64le (mozilla#1512162) Patch423: mozilla-1512162.patch @@ -271,6 +273,7 @@ BuildRequires: clang-libs BuildRequires: llvm-devel %endif BuildRequires: rust +BuildRequires: rustfmt %if 0%{?pgo_wayland} BuildRequires: mutter BuildRequires: gsettings-desktop-schemas @@ -378,6 +381,7 @@ tar -xf %{SOURCE5} %patch -P 423 -p 1 -b .1512162 %endif %patch -P 425 -p 1 -b .1912663 +%patch -P 426 -p 1 -b .1917964 %patch -P 54 -p 1 -b .1669639 From a3963a5de6398216cf917131f508d4486736736c Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Sat, 1 Feb 2025 18:52:16 +0100 Subject: [PATCH 51/99] Re-testing with GCC --- icecat.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/icecat.spec b/icecat.spec index e755951..44d4fd7 100644 --- a/icecat.spec +++ b/icecat.spec @@ -89,7 +89,7 @@ ExcludeArch: %{ix86} %{arm} %global disable_elfhack 1 # Use clang? -%global build_with_clang 1 +%global build_with_clang 0 # https://bugzilla.redhat.com/show_bug.cgi?id=1908792 # https://bugzilla.redhat.com/show_bug.cgi?id=2255254 From ed541732a68fc43c97dae4ad832dde0d46c72fc9 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Sun, 2 Feb 2025 00:22:15 +0100 Subject: [PATCH 52/99] Fix swgl build with GCC 15 --- icecat-115.19.0-fix_mz1917964.patch | 65 +++++++++++++++++++++++++++++ 1 file changed, 65 insertions(+) diff --git a/icecat-115.19.0-fix_mz1917964.patch b/icecat-115.19.0-fix_mz1917964.patch index 935485d..89fc16a 100644 --- a/icecat-115.19.0-fix_mz1917964.patch +++ b/icecat-115.19.0-fix_mz1917964.patch @@ -1,3 +1,68 @@ + +# HG changeset patch +# User Sam James +# Date 1726081531 0 +# Node ID 0249085453e0d5c8378a1a053b94753fd52c956c +# Parent 3fca72d15659808d8f453b44a13320d4f6ceca86 +Bug 1917964 - Fix swgl build with GCC 15. r=gfx-reviewers,lsalzman + +Fix broken specialisations which are exposed by a recent change in GCC trunk. + +See https://gcc.gnu.org/PR116666. + +Differential Revision: https://phabricator.services.mozilla.com/D221744 + +diff --git a/gfx/wr/swgl/src/vector_type.h b/gfx/wr/swgl/src/vector_type.h +--- a/gfx/wr/swgl/src/vector_type.h ++++ b/gfx/wr/swgl/src/vector_type.h +@@ -235,33 +235,33 @@ struct VectorType { + data /= x.data; + return *this; + } + VectorType& operator%=(int x) { + data %= x; + return *this; + } + +- VectorType operator==(VectorType x) const { +- return VectorType::wrap(data == x.data); ++ VectorType operator==(VectorType x) const { ++ return VectorType::wrap(data == x.data); + } +- VectorType operator!=(VectorType x) const { +- return VectorType::wrap(data != x.data); ++ VectorType operator!=(VectorType x) const { ++ return VectorType::wrap(data != x.data); + } +- VectorType operator<(VectorType x) const { +- return VectorType::wrap(data < x.data); ++ VectorType operator<(VectorType x) const { ++ return VectorType::wrap(data < x.data); + } +- VectorType operator>(VectorType x) const { +- return VectorType::wrap(data > x.data); ++ VectorType operator>(VectorType x) const { ++ return VectorType::wrap(data > x.data); + } +- VectorType operator<=(VectorType x) const { +- return VectorType::wrap(data <= x.data); ++ VectorType operator<=(VectorType x) const { ++ return VectorType::wrap(data <= x.data); + } +- VectorType operator>=(VectorType x) const { +- return VectorType::wrap(data >= x.data); ++ VectorType operator>=(VectorType x) const { ++ return VectorType::wrap(data >= x.data); + } + + VectorType operator!() const { return wrap(!data); } + VectorType operator&&(VectorType x) const { return wrap(data & x.data); } + VectorType operator||(VectorType x) const { return wrap(data | x.data); } + + VectorType& operator=(VectorType x) { + data = x.data; + + # HG changeset patch # User Lee Salzman # Date 1726239330 0 From 2e957031566e75a98e698a399ef9d0e572e65c51 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Fri, 7 Feb 2025 22:31:07 +0100 Subject: [PATCH 53/99] Release 115.20.0 --- .gitignore | 2 ++ icecat-lang_download.sh | 2 +- icecat.spec | 54 +++++++++++++++++++++++++---------------- sources | 4 +-- 4 files changed, 38 insertions(+), 24 deletions(-) diff --git a/.gitignore b/.gitignore index 5e08528..e84bce5 100644 --- a/.gitignore +++ b/.gitignore @@ -268,3 +268,5 @@ /icecat-115.18.0-rh2.tar.bz2 /icecat-115.19.0-langpacks.tar.gz /icecat-115.19.0-rh1.tar.bz2 +/icecat-115.20.0-langpacks.tar.gz +/icecat-115.20.0-rh1.tar.bz2 diff --git a/icecat-lang_download.sh b/icecat-lang_download.sh index 20ee05b..9853483 100755 --- a/icecat-lang_download.sh +++ b/icecat-lang_download.sh @@ -1,6 +1,6 @@ #!/bin/bash -VERSION=115.19.0 +VERSION=115.20.0 URL=https://ftp.mozilla.org/pub/firefox/releases/${VERSION}esr/linux-x86_64/xpi/ for u in $URL; do diff --git a/icecat.spec b/icecat.spec index 44d4fd7..9b8dbfb 100644 --- a/icecat.spec +++ b/icecat.spec @@ -89,7 +89,11 @@ ExcludeArch: %{ix86} %{arm} %global disable_elfhack 1 # Use clang? -%global build_with_clang 0 +%bcond_without toolchain_clang + +%if %{with toolchain_clang} +%global toolchain clang +%endif # https://bugzilla.redhat.com/show_bug.cgi?id=1908792 # https://bugzilla.redhat.com/show_bug.cgi?id=2255254 @@ -98,7 +102,7 @@ ExcludeArch: %{ix86} %{arm} Name: icecat Epoch: 2 -Version: 115.19.0 +Version: 115.20.0 Release: %autorelease -e %{redhat_ver} Summary: GNU version of Firefox browser @@ -261,17 +265,19 @@ BuildRequires: pulseaudio-libs-devel BuildRequires: yasm BuildRequires: llvm BuildRequires: llvm-devel -%if 0%{?build_with_clang} +%if 0%{?fedora} >= 40 || 0%{?rhel} >= 10 BuildRequires: clang17 BuildRequires: clang17-libs BuildRequires: llvm17-devel -BuildRequires: lld %global llvm_suffix -17 %else BuildRequires: clang BuildRequires: clang-libs BuildRequires: llvm-devel %endif +%if "%toolchain" == "clang" +BuildRequires: lld +%endif BuildRequires: rust BuildRequires: rustfmt %if 0%{?pgo_wayland} @@ -387,11 +393,9 @@ tar -xf %{SOURCE5} # PGO patches %if 0%{?build_with_pgo} -%if !%{build_with_clang} %patch -P 600 -p 1 -b .pgo %patch -P 602 -p 1 -b .1516803 %endif -%endif %patch -P 603 -p1 -b .inline # Remove default configuration and copy the customized one @@ -474,9 +478,7 @@ echo "ac_add_options --with-l10n-base=$PWD/l10n" >> .mozconfig %endif # Clang -%if 0%{?build_with_clang} echo "ac_add_options --with-clang-path=`which clang%{?llvm_suffix}`" >> .mozconfig -%endif echo "ac_add_options --with-libclang-path=`llvm-config%{?llvm_suffix} --libdir`" >> .mozconfig %ifarch s390x @@ -563,11 +565,16 @@ export MOZ_DEBUG_FLAGS=" " # We don't want firefox to use CK_GCM_PARAMS_V3 in nss MOZ_OPT_FLAGS="$MOZ_OPT_FLAGS -DNSS_PKCS11_3_0_STRICT" -%if !0%{?build_with_clang} -%ifarch s390x %{power64} %{arm64} -MOZ_LINK_FLAGS="-Wl,--no-keep-memory -Wl,--reduce-memory-overheads -Wl,--print-memory-usage" +%if "%toolchain" != "clang" +%ifarch s390 ppc aarch64 %{ix86} +MOZ_LINK_FLAGS="-Wl,--no-keep-memory -Wl,--reduce-memory-overheads" +%endif +%ifarch %{arm} +MOZ_LINK_FLAGS="-Wl,--no-keep-memory" +echo "ac_add_options --enable-linker=gold" >> .mozconfig %endif %endif + %ifarch s390x export RUSTFLAGS="-Cdebuginfo=0" %endif @@ -581,20 +588,25 @@ export LIBDIR='%{_libdir}' export PKG_CONFIG="`which pkg-config`" export PYTHON='%{__python3}' -%if 0%{?build_with_clang} -export LLVM_PROFDATA="llvm-profdata" -export AR="llvm-ar" -export NM="llvm-nm" -export RANLIB="llvm-ranlib" +%if "%toolchain" == "clang" +echo "export LLVM_PROFDATA=\"llvm-profdata\"" >> .mozconfig +echo "export AR=\"llvm-ar\"" >> .mozconfig +echo "export NM=\"llvm-nm\"" >> .mozconfig +echo "export RANLIB=\"llvm-ranlib\"" >> .mozconfig echo "ac_add_options --enable-linker=lld" >> .mozconfig %else -export CC=gcc -export CXX=g++ -export AR="gcc-ar" -export NM="gcc-nm" -export RANLIB="gcc-ranlib" +echo "export CC=gcc" >> .mozconfig +echo "export CXX=g++" >> .mozconfig +echo "export AR=\"gcc-ar\"" >> .mozconfig +echo "export NM=\"gcc-nm\"" >> .mozconfig +echo "export RANLIB=\"gcc-ranlib\"" >> .mozconfig %endif + +%if 0%{?build_with_pgo} +echo "ac_add_options MOZ_PGO=1" >> .mozconfig +# PGO build doesn't work with ccache export CCACHE_DISABLE=1 +%endif %if %{?less_optbuild} MOZ_SMP_FLAGS=-j1 diff --git a/sources b/sources index 5d7cfcf..daae311 100644 --- a/sources +++ b/sources @@ -1,5 +1,5 @@ SHA512 (cbindgen-vendor.tar.xz) = 662fbf92c54e9c044d639bf6b3243ffcfd73c737967517f66e41f193c798d475ad4526f53ebcf57587f10ba01e0ebd3b63bad2bd2942c728f2d77b03e83faaa8 -SHA512 (icecat-115.19.0-langpacks.tar.gz) = ca3d6446e4a140369cd788a3ab790f2084b297c62754118fd3714fb03fe54a62494c0d762c774087d74545b061922beef59414df3dec7ff9ff991ddefe68efec -SHA512 (icecat-115.19.0-rh1.tar.bz2) = 43ef502eccd1c1777d860165681781eb0702f0a968a7701c6230c81930c80f972dc20cdce5b023b4caabe3f12b22095fac15d512ec430f3917ff4d5d299b4c07 +SHA512 (icecat-115.20.0-langpacks.tar.gz) = f1ebabced65506073ee2b886ac44df87455ed932f4a6321b09639945fade576196558a03c872cc74f1632456b8e1df5ffe6876cb790ee3cae2d2a13d24d02fee +SHA512 (icecat-115.20.0-rh1.tar.bz2) = e8356dca1636975df9e91045b96add6b41f7596ac10a9ff3fab3de437c2937b18fa6a77459e07da58014aa2d313e144fde7a70bbd1bee00136f55238a4532438 SHA512 (icecat-COPYING-licensefiles.tar.gz) = ed541845170f1d209e322b0def3248d571e0c42c4a17c74e83197e743bd8a128a1475f5312d905c8e70d047eddeac17e604373892eb6d5f1720c5c361849c42c SHA512 (icecat.png) = a3cec16cb15a27c3c91b53e2c534e78b07911011ff1331e450c0baf8e13b76da7cea2a90e5d75191fa88cfbfd40a0a7f3e553e92b64d0043dadd5ad5edfdf81c From 153e450492df71f72c703b9e767bba6a8b2db230 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Fri, 7 Feb 2025 22:54:59 +0100 Subject: [PATCH 54/99] Fix clang build --- icecat.spec | 54 ++++++++++++++++++++++++++++++----------------------- 1 file changed, 31 insertions(+), 23 deletions(-) diff --git a/icecat.spec b/icecat.spec index 44d4fd7..93fdd3f 100644 --- a/icecat.spec +++ b/icecat.spec @@ -89,7 +89,11 @@ ExcludeArch: %{ix86} %{arm} %global disable_elfhack 1 # Use clang? -%global build_with_clang 0 +%bcond_without toolchain_clang + +%if %{with toolchain_clang} +%global toolchain clang +%endif # https://bugzilla.redhat.com/show_bug.cgi?id=1908792 # https://bugzilla.redhat.com/show_bug.cgi?id=2255254 @@ -98,7 +102,7 @@ ExcludeArch: %{ix86} %{arm} Name: icecat Epoch: 2 -Version: 115.19.0 +Version: 115.20.0 Release: %autorelease -e %{redhat_ver} Summary: GNU version of Firefox browser @@ -260,18 +264,19 @@ BuildRequires: pulseaudio-libs-devel %endif BuildRequires: yasm BuildRequires: llvm -BuildRequires: llvm-devel -%if 0%{?build_with_clang} +%if 0%{?fedora} >= 40 || 0%{?rhel} >= 10 BuildRequires: clang17 BuildRequires: clang17-libs BuildRequires: llvm17-devel -BuildRequires: lld %global llvm_suffix -17 %else BuildRequires: clang BuildRequires: clang-libs BuildRequires: llvm-devel %endif +%if "%toolchain" == "clang" +BuildRequires: lld +%endif BuildRequires: rust BuildRequires: rustfmt %if 0%{?pgo_wayland} @@ -387,11 +392,9 @@ tar -xf %{SOURCE5} # PGO patches %if 0%{?build_with_pgo} -%if !%{build_with_clang} %patch -P 600 -p 1 -b .pgo %patch -P 602 -p 1 -b .1516803 %endif -%endif %patch -P 603 -p1 -b .inline # Remove default configuration and copy the customized one @@ -473,11 +476,10 @@ echo "ac_add_options --disable-crashreporter" >> .mozconfig echo "ac_add_options --with-l10n-base=$PWD/l10n" >> .mozconfig %endif -# Clang -%if 0%{?build_with_clang} -echo "ac_add_options --with-clang-path=`which clang%{?llvm_suffix}`" >> .mozconfig -%endif +%if "%toolchain" == "clang" echo "ac_add_options --with-libclang-path=`llvm-config%{?llvm_suffix} --libdir`" >> .mozconfig +#echo "ac_add_options --with-clang-path=%%{_bindir}/clang%%{?llvm_suffix}" >> .mozconfig +%endif %ifarch s390x echo "ac_add_options --disable-jit" >> .mozconfig @@ -563,11 +565,12 @@ export MOZ_DEBUG_FLAGS=" " # We don't want firefox to use CK_GCM_PARAMS_V3 in nss MOZ_OPT_FLAGS="$MOZ_OPT_FLAGS -DNSS_PKCS11_3_0_STRICT" -%if !0%{?build_with_clang} +%if "%toolchain" != "clang" %ifarch s390x %{power64} %{arm64} -MOZ_LINK_FLAGS="-Wl,--no-keep-memory -Wl,--reduce-memory-overheads -Wl,--print-memory-usage" +MOZ_LINK_FLAGS="-Wl,--no-keep-memory -Wl,--reduce-memory-overheads" %endif %endif + %ifarch s390x export RUSTFLAGS="-Cdebuginfo=0" %endif @@ -581,20 +584,25 @@ export LIBDIR='%{_libdir}' export PKG_CONFIG="`which pkg-config`" export PYTHON='%{__python3}' -%if 0%{?build_with_clang} -export LLVM_PROFDATA="llvm-profdata" -export AR="llvm-ar" -export NM="llvm-nm" -export RANLIB="llvm-ranlib" +%if "%toolchain" == "clang" +echo "export LLVM_PROFDATA=\"llvm-profdata\"" >> .mozconfig +echo "export AR=\"llvm-ar\"" >> .mozconfig +echo "export NM=\"llvm-nm\"" >> .mozconfig +echo "export RANLIB=\"llvm-ranlib\"" >> .mozconfig echo "ac_add_options --enable-linker=lld" >> .mozconfig %else -export CC=gcc -export CXX=g++ -export AR="gcc-ar" -export NM="gcc-nm" -export RANLIB="gcc-ranlib" +echo "export CC=gcc" >> .mozconfig +echo "export CXX=g++" >> .mozconfig +echo "export AR=\"gcc-ar\"" >> .mozconfig +echo "export NM=\"gcc-nm\"" >> .mozconfig +echo "export RANLIB=\"gcc-ranlib\"" >> .mozconfig %endif + +%if 0%{?build_with_pgo} +echo "ac_add_options MOZ_PGO=1" >> .mozconfig +# PGO build doesn't work with ccache export CCACHE_DISABLE=1 +%endif %if %{?less_optbuild} MOZ_SMP_FLAGS=-j1 From 1eb82a11390063d4eca62fffacca39017892ab4d Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Fri, 7 Feb 2025 22:56:46 +0100 Subject: [PATCH 55/99] Release 115.20.0| Fix clang build --- .gitignore | 2 ++ icecat-lang_download.sh | 2 +- sources | 4 ++-- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index 5e08528..e84bce5 100644 --- a/.gitignore +++ b/.gitignore @@ -268,3 +268,5 @@ /icecat-115.18.0-rh2.tar.bz2 /icecat-115.19.0-langpacks.tar.gz /icecat-115.19.0-rh1.tar.bz2 +/icecat-115.20.0-langpacks.tar.gz +/icecat-115.20.0-rh1.tar.bz2 diff --git a/icecat-lang_download.sh b/icecat-lang_download.sh index 20ee05b..9853483 100755 --- a/icecat-lang_download.sh +++ b/icecat-lang_download.sh @@ -1,6 +1,6 @@ #!/bin/bash -VERSION=115.19.0 +VERSION=115.20.0 URL=https://ftp.mozilla.org/pub/firefox/releases/${VERSION}esr/linux-x86_64/xpi/ for u in $URL; do diff --git a/sources b/sources index 5d7cfcf..daae311 100644 --- a/sources +++ b/sources @@ -1,5 +1,5 @@ SHA512 (cbindgen-vendor.tar.xz) = 662fbf92c54e9c044d639bf6b3243ffcfd73c737967517f66e41f193c798d475ad4526f53ebcf57587f10ba01e0ebd3b63bad2bd2942c728f2d77b03e83faaa8 -SHA512 (icecat-115.19.0-langpacks.tar.gz) = ca3d6446e4a140369cd788a3ab790f2084b297c62754118fd3714fb03fe54a62494c0d762c774087d74545b061922beef59414df3dec7ff9ff991ddefe68efec -SHA512 (icecat-115.19.0-rh1.tar.bz2) = 43ef502eccd1c1777d860165681781eb0702f0a968a7701c6230c81930c80f972dc20cdce5b023b4caabe3f12b22095fac15d512ec430f3917ff4d5d299b4c07 +SHA512 (icecat-115.20.0-langpacks.tar.gz) = f1ebabced65506073ee2b886ac44df87455ed932f4a6321b09639945fade576196558a03c872cc74f1632456b8e1df5ffe6876cb790ee3cae2d2a13d24d02fee +SHA512 (icecat-115.20.0-rh1.tar.bz2) = e8356dca1636975df9e91045b96add6b41f7596ac10a9ff3fab3de437c2937b18fa6a77459e07da58014aa2d313e144fde7a70bbd1bee00136f55238a4532438 SHA512 (icecat-COPYING-licensefiles.tar.gz) = ed541845170f1d209e322b0def3248d571e0c42c4a17c74e83197e743bd8a128a1475f5312d905c8e70d047eddeac17e604373892eb6d5f1720c5c361849c42c SHA512 (icecat.png) = a3cec16cb15a27c3c91b53e2c534e78b07911011ff1331e450c0baf8e13b76da7cea2a90e5d75191fa88cfbfd40a0a7f3e553e92b64d0043dadd5ad5edfdf81c From af5987fea71450e2af537272d9ad09352272abeb Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Sat, 8 Feb 2025 14:20:56 +0100 Subject: [PATCH 56/99] Set compilers --- icecat.spec | 2 ++ 1 file changed, 2 insertions(+) diff --git a/icecat.spec b/icecat.spec index 93fdd3f..830c0fb 100644 --- a/icecat.spec +++ b/icecat.spec @@ -590,6 +590,8 @@ echo "export AR=\"llvm-ar\"" >> .mozconfig echo "export NM=\"llvm-nm\"" >> .mozconfig echo "export RANLIB=\"llvm-ranlib\"" >> .mozconfig echo "ac_add_options --enable-linker=lld" >> .mozconfig +echo "export CC=clang%{?llvm_suffix}" >> .mozconfig +echo "export CXX=clang++%{?llvm_suffix}" >> .mozconfig %else echo "export CC=gcc" >> .mozconfig echo "export CXX=g++" >> .mozconfig From 825d8dec9725dbcd48a01601be026f7fca31d38b Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Tue, 4 Mar 2025 21:53:38 +0100 Subject: [PATCH 57/99] Release 115.21.0 --- .gitignore | 2 ++ icecat-lang_download.sh | 2 +- icecat.spec | 2 +- sources | 4 ++-- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index e84bce5..abccc3b 100644 --- a/.gitignore +++ b/.gitignore @@ -270,3 +270,5 @@ /icecat-115.19.0-rh1.tar.bz2 /icecat-115.20.0-langpacks.tar.gz /icecat-115.20.0-rh1.tar.bz2 +/icecat-115.21.0-langpacks.tar.gz +/icecat-115.21.0-rh1.tar.bz2 diff --git a/icecat-lang_download.sh b/icecat-lang_download.sh index 9853483..d44357b 100755 --- a/icecat-lang_download.sh +++ b/icecat-lang_download.sh @@ -1,6 +1,6 @@ #!/bin/bash -VERSION=115.20.0 +VERSION=115.21.0 URL=https://ftp.mozilla.org/pub/firefox/releases/${VERSION}esr/linux-x86_64/xpi/ for u in $URL; do diff --git a/icecat.spec b/icecat.spec index 830c0fb..45bc454 100644 --- a/icecat.spec +++ b/icecat.spec @@ -102,7 +102,7 @@ ExcludeArch: %{ix86} %{arm} Name: icecat Epoch: 2 -Version: 115.20.0 +Version: 115.21.0 Release: %autorelease -e %{redhat_ver} Summary: GNU version of Firefox browser diff --git a/sources b/sources index daae311..57c7f26 100644 --- a/sources +++ b/sources @@ -1,5 +1,5 @@ SHA512 (cbindgen-vendor.tar.xz) = 662fbf92c54e9c044d639bf6b3243ffcfd73c737967517f66e41f193c798d475ad4526f53ebcf57587f10ba01e0ebd3b63bad2bd2942c728f2d77b03e83faaa8 -SHA512 (icecat-115.20.0-langpacks.tar.gz) = f1ebabced65506073ee2b886ac44df87455ed932f4a6321b09639945fade576196558a03c872cc74f1632456b8e1df5ffe6876cb790ee3cae2d2a13d24d02fee -SHA512 (icecat-115.20.0-rh1.tar.bz2) = e8356dca1636975df9e91045b96add6b41f7596ac10a9ff3fab3de437c2937b18fa6a77459e07da58014aa2d313e144fde7a70bbd1bee00136f55238a4532438 +SHA512 (icecat-115.21.0-langpacks.tar.gz) = 1a82c2b6ecf650c1698f21022dec685aa65193f2fb67e399c201925e26531a895a95188ad607b4f9ad1a0dcd3633cf08c0f15219fc448a32b074417b7566ef03 +SHA512 (icecat-115.21.0-rh1.tar.bz2) = 07ab55b322397207164419480ec4812f77bb63021b3afb17fa98e800f7dc457f2a8b914e73b513b0436648f51404f56669d15bda0042bb65e41f1af457ac1565 SHA512 (icecat-COPYING-licensefiles.tar.gz) = ed541845170f1d209e322b0def3248d571e0c42c4a17c74e83197e743bd8a128a1475f5312d905c8e70d047eddeac17e604373892eb6d5f1720c5c361849c42c SHA512 (icecat.png) = a3cec16cb15a27c3c91b53e2c534e78b07911011ff1331e450c0baf8e13b76da7cea2a90e5d75191fa88cfbfd40a0a7f3e553e92b64d0043dadd5ad5edfdf81c From 3d7f8e2c514cb3549c4887fca801975e12971c09 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Fri, 4 Apr 2025 21:51:37 +0200 Subject: [PATCH 58/99] Release 115.22.0 --- .gitignore | 2 ++ icecat-lang_download.sh | 2 +- icecat.spec | 2 +- sources | 4 ++-- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index abccc3b..39bc895 100644 --- a/.gitignore +++ b/.gitignore @@ -272,3 +272,5 @@ /icecat-115.20.0-rh1.tar.bz2 /icecat-115.21.0-langpacks.tar.gz /icecat-115.21.0-rh1.tar.bz2 +/icecat-115.22.0-langpacks.tar.gz +/icecat-115.22.0-rh1.tar.bz2 diff --git a/icecat-lang_download.sh b/icecat-lang_download.sh index d44357b..f64b694 100755 --- a/icecat-lang_download.sh +++ b/icecat-lang_download.sh @@ -1,6 +1,6 @@ #!/bin/bash -VERSION=115.21.0 +VERSION=115.22.0 URL=https://ftp.mozilla.org/pub/firefox/releases/${VERSION}esr/linux-x86_64/xpi/ for u in $URL; do diff --git a/icecat.spec b/icecat.spec index 45bc454..cd5afdf 100644 --- a/icecat.spec +++ b/icecat.spec @@ -102,7 +102,7 @@ ExcludeArch: %{ix86} %{arm} Name: icecat Epoch: 2 -Version: 115.21.0 +Version: 115.22.0 Release: %autorelease -e %{redhat_ver} Summary: GNU version of Firefox browser diff --git a/sources b/sources index 57c7f26..6cce0e2 100644 --- a/sources +++ b/sources @@ -1,5 +1,5 @@ SHA512 (cbindgen-vendor.tar.xz) = 662fbf92c54e9c044d639bf6b3243ffcfd73c737967517f66e41f193c798d475ad4526f53ebcf57587f10ba01e0ebd3b63bad2bd2942c728f2d77b03e83faaa8 -SHA512 (icecat-115.21.0-langpacks.tar.gz) = 1a82c2b6ecf650c1698f21022dec685aa65193f2fb67e399c201925e26531a895a95188ad607b4f9ad1a0dcd3633cf08c0f15219fc448a32b074417b7566ef03 -SHA512 (icecat-115.21.0-rh1.tar.bz2) = 07ab55b322397207164419480ec4812f77bb63021b3afb17fa98e800f7dc457f2a8b914e73b513b0436648f51404f56669d15bda0042bb65e41f1af457ac1565 +SHA512 (icecat-115.22.0-langpacks.tar.gz) = 10c9e0cbc41e49d882cf0849941efd7f526d5b6f5c51c16ad26e66ed84f94862aeb2698e028905fe64b8777931dd4099f0d1a03216ab8e33b131f44ec0c65037 +SHA512 (icecat-115.22.0-rh1.tar.bz2) = 290366c86dff9733d4ab3deb150d9ac10e77c292a1fba242e4d7c91d3a8e74fce66cf00817e59733deb73b8decf88315364225762c366be71d0295325849c2b7 SHA512 (icecat-COPYING-licensefiles.tar.gz) = ed541845170f1d209e322b0def3248d571e0c42c4a17c74e83197e743bd8a128a1475f5312d905c8e70d047eddeac17e604373892eb6d5f1720c5c361849c42c SHA512 (icecat.png) = a3cec16cb15a27c3c91b53e2c534e78b07911011ff1331e450c0baf8e13b76da7cea2a90e5d75191fa88cfbfd40a0a7f3e553e92b64d0043dadd5ad5edfdf81c From ce1f8ffead3a0ef4fae7614d444672771978d61b Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Sun, 20 Apr 2025 20:04:13 +0200 Subject: [PATCH 59/99] Upload regenerated built-in cbindgen --- icecat.spec | 2 +- sources | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/icecat.spec b/icecat.spec index cd5afdf..eece565 100644 --- a/icecat.spec +++ b/icecat.spec @@ -9,7 +9,7 @@ ExcludeArch: %{ix86} %{arm} # Bundled cbindgen makes build slow. # Enable only if system cbindgen is not available. -%global use_bundled_cbindgen 0 +%global use_bundled_cbindgen 1 #################### diff --git a/sources b/sources index 6cce0e2..8224304 100644 --- a/sources +++ b/sources @@ -1,4 +1,4 @@ -SHA512 (cbindgen-vendor.tar.xz) = 662fbf92c54e9c044d639bf6b3243ffcfd73c737967517f66e41f193c798d475ad4526f53ebcf57587f10ba01e0ebd3b63bad2bd2942c728f2d77b03e83faaa8 +SHA512 (cbindgen-vendor.tar.xz) = 6d354d65674395b8171f262ae9aa08f656fdd83b6d29d70bd1ad2f13c4a52db81df780cfdf6ac86e9d1f16426c9ab3cdc0160f0785a0909ad7525fd8a9bc3b25 SHA512 (icecat-115.22.0-langpacks.tar.gz) = 10c9e0cbc41e49d882cf0849941efd7f526d5b6f5c51c16ad26e66ed84f94862aeb2698e028905fe64b8777931dd4099f0d1a03216ab8e33b131f44ec0c65037 SHA512 (icecat-115.22.0-rh1.tar.bz2) = 290366c86dff9733d4ab3deb150d9ac10e77c292a1fba242e4d7c91d3a8e74fce66cf00817e59733deb73b8decf88315364225762c366be71d0295325849c2b7 SHA512 (icecat-COPYING-licensefiles.tar.gz) = ed541845170f1d209e322b0def3248d571e0c42c4a17c74e83197e743bd8a128a1475f5312d905c8e70d047eddeac17e604373892eb6d5f1720c5c361849c42c From fb5b31aab67d9c717713a5a25969ad940360c2cf Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Tue, 6 May 2025 23:17:18 +0200 Subject: [PATCH 60/99] Release 115.23.0 --- .gitignore | 2 ++ icecat-lang_download.sh | 2 +- icecat.spec | 2 +- sources | 4 ++-- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 39bc895..88bfe66 100644 --- a/.gitignore +++ b/.gitignore @@ -274,3 +274,5 @@ /icecat-115.21.0-rh1.tar.bz2 /icecat-115.22.0-langpacks.tar.gz /icecat-115.22.0-rh1.tar.bz2 +/icecat-115.23.0-langpacks.tar.gz +/icecat-115.23.0-rh1.tar.bz2 diff --git a/icecat-lang_download.sh b/icecat-lang_download.sh index f64b694..a2c61ec 100755 --- a/icecat-lang_download.sh +++ b/icecat-lang_download.sh @@ -1,6 +1,6 @@ #!/bin/bash -VERSION=115.22.0 +VERSION=115.23.0 URL=https://ftp.mozilla.org/pub/firefox/releases/${VERSION}esr/linux-x86_64/xpi/ for u in $URL; do diff --git a/icecat.spec b/icecat.spec index eece565..19b2e38 100644 --- a/icecat.spec +++ b/icecat.spec @@ -102,7 +102,7 @@ ExcludeArch: %{ix86} %{arm} Name: icecat Epoch: 2 -Version: 115.22.0 +Version: 115.23.0 Release: %autorelease -e %{redhat_ver} Summary: GNU version of Firefox browser diff --git a/sources b/sources index 8224304..b03c490 100644 --- a/sources +++ b/sources @@ -1,5 +1,5 @@ SHA512 (cbindgen-vendor.tar.xz) = 6d354d65674395b8171f262ae9aa08f656fdd83b6d29d70bd1ad2f13c4a52db81df780cfdf6ac86e9d1f16426c9ab3cdc0160f0785a0909ad7525fd8a9bc3b25 -SHA512 (icecat-115.22.0-langpacks.tar.gz) = 10c9e0cbc41e49d882cf0849941efd7f526d5b6f5c51c16ad26e66ed84f94862aeb2698e028905fe64b8777931dd4099f0d1a03216ab8e33b131f44ec0c65037 -SHA512 (icecat-115.22.0-rh1.tar.bz2) = 290366c86dff9733d4ab3deb150d9ac10e77c292a1fba242e4d7c91d3a8e74fce66cf00817e59733deb73b8decf88315364225762c366be71d0295325849c2b7 +SHA512 (icecat-115.23.0-langpacks.tar.gz) = e457d3d040b0e121293d635fdd17e735183a170ba8d9359871ada492e87f0e82efecb2ba3323639fba0ccb4fb5f6e13fb9671e60a4921947378f03c4a4033a56 +SHA512 (icecat-115.23.0-rh1.tar.bz2) = a80c380f927e28f459a272aeca8b1ebe03847d517d8757f40f6f4c04ec2ea3c72262fc6b082cc6125f4fcf508d3d5305207afd17bceece5162dd01dccf00aa1d SHA512 (icecat-COPYING-licensefiles.tar.gz) = ed541845170f1d209e322b0def3248d571e0c42c4a17c74e83197e743bd8a128a1475f5312d905c8e70d047eddeac17e604373892eb6d5f1720c5c361849c42c SHA512 (icecat.png) = a3cec16cb15a27c3c91b53e2c534e78b07911011ff1331e450c0baf8e13b76da7cea2a90e5d75191fa88cfbfd40a0a7f3e553e92b64d0043dadd5ad5edfdf81c From 8aad7d09048c7a582e2ef3ebc59fb7daa25c4e79 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Thu, 22 May 2025 22:05:07 +0200 Subject: [PATCH 61/99] Release 115.23.1 --- .gitignore | 2 ++ icecat-lang_download.sh | 2 +- icecat.spec | 2 +- sources | 4 ++-- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 88bfe66..c40fe6b 100644 --- a/.gitignore +++ b/.gitignore @@ -276,3 +276,5 @@ /icecat-115.22.0-rh1.tar.bz2 /icecat-115.23.0-langpacks.tar.gz /icecat-115.23.0-rh1.tar.bz2 +/icecat-115.23.1-langpacks.tar.gz +/icecat-115.23.1-rh1.tar.bz2 diff --git a/icecat-lang_download.sh b/icecat-lang_download.sh index a2c61ec..3b9da52 100755 --- a/icecat-lang_download.sh +++ b/icecat-lang_download.sh @@ -1,6 +1,6 @@ #!/bin/bash -VERSION=115.23.0 +VERSION=115.23.1 URL=https://ftp.mozilla.org/pub/firefox/releases/${VERSION}esr/linux-x86_64/xpi/ for u in $URL; do diff --git a/icecat.spec b/icecat.spec index 19b2e38..1bf8d5b 100644 --- a/icecat.spec +++ b/icecat.spec @@ -102,7 +102,7 @@ ExcludeArch: %{ix86} %{arm} Name: icecat Epoch: 2 -Version: 115.23.0 +Version: 115.23.1 Release: %autorelease -e %{redhat_ver} Summary: GNU version of Firefox browser diff --git a/sources b/sources index b03c490..9946222 100644 --- a/sources +++ b/sources @@ -1,5 +1,5 @@ SHA512 (cbindgen-vendor.tar.xz) = 6d354d65674395b8171f262ae9aa08f656fdd83b6d29d70bd1ad2f13c4a52db81df780cfdf6ac86e9d1f16426c9ab3cdc0160f0785a0909ad7525fd8a9bc3b25 -SHA512 (icecat-115.23.0-langpacks.tar.gz) = e457d3d040b0e121293d635fdd17e735183a170ba8d9359871ada492e87f0e82efecb2ba3323639fba0ccb4fb5f6e13fb9671e60a4921947378f03c4a4033a56 -SHA512 (icecat-115.23.0-rh1.tar.bz2) = a80c380f927e28f459a272aeca8b1ebe03847d517d8757f40f6f4c04ec2ea3c72262fc6b082cc6125f4fcf508d3d5305207afd17bceece5162dd01dccf00aa1d +SHA512 (icecat-115.23.1-langpacks.tar.gz) = 4795b33c1d142866b42b38ab15e1f883fc98bba2871d98276c837da062fc9540785806c77f2a1b9b38db773b4e0ed96b5f7a3b716f7b1325915630023667d743 +SHA512 (icecat-115.23.1-rh1.tar.bz2) = 9732f3b925b7acc84339ee41014de92b0f34846dc279ba68f49347f3631fc391b44fc1f4263d356c9065a9a1f8a1a6de5a77a6b4cb388acbde85f84ca963e1f2 SHA512 (icecat-COPYING-licensefiles.tar.gz) = ed541845170f1d209e322b0def3248d571e0c42c4a17c74e83197e743bd8a128a1475f5312d905c8e70d047eddeac17e604373892eb6d5f1720c5c361849c42c SHA512 (icecat.png) = a3cec16cb15a27c3c91b53e2c534e78b07911011ff1331e450c0baf8e13b76da7cea2a90e5d75191fa88cfbfd40a0a7f3e553e92b64d0043dadd5ad5edfdf81c From d0d7b964ddd40deff9aca5920f770e647ca759c7 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Sat, 31 May 2025 22:32:51 +0200 Subject: [PATCH 62/99] Release 115.24.0 --- .gitignore | 2 ++ icecat-lang_download.sh | 2 +- icecat.spec | 2 +- sources | 4 ++-- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index c40fe6b..96fb26d 100644 --- a/.gitignore +++ b/.gitignore @@ -278,3 +278,5 @@ /icecat-115.23.0-rh1.tar.bz2 /icecat-115.23.1-langpacks.tar.gz /icecat-115.23.1-rh1.tar.bz2 +/icecat-115.24.0-langpacks.tar.gz +/icecat-115.24.0-rh1.tar.bz2 diff --git a/icecat-lang_download.sh b/icecat-lang_download.sh index 3b9da52..1bce42c 100755 --- a/icecat-lang_download.sh +++ b/icecat-lang_download.sh @@ -1,6 +1,6 @@ #!/bin/bash -VERSION=115.23.1 +VERSION=115.24.0 URL=https://ftp.mozilla.org/pub/firefox/releases/${VERSION}esr/linux-x86_64/xpi/ for u in $URL; do diff --git a/icecat.spec b/icecat.spec index 1bf8d5b..f4c2135 100644 --- a/icecat.spec +++ b/icecat.spec @@ -102,7 +102,7 @@ ExcludeArch: %{ix86} %{arm} Name: icecat Epoch: 2 -Version: 115.23.1 +Version: 115.24.0 Release: %autorelease -e %{redhat_ver} Summary: GNU version of Firefox browser diff --git a/sources b/sources index 9946222..2603140 100644 --- a/sources +++ b/sources @@ -1,5 +1,5 @@ SHA512 (cbindgen-vendor.tar.xz) = 6d354d65674395b8171f262ae9aa08f656fdd83b6d29d70bd1ad2f13c4a52db81df780cfdf6ac86e9d1f16426c9ab3cdc0160f0785a0909ad7525fd8a9bc3b25 -SHA512 (icecat-115.23.1-langpacks.tar.gz) = 4795b33c1d142866b42b38ab15e1f883fc98bba2871d98276c837da062fc9540785806c77f2a1b9b38db773b4e0ed96b5f7a3b716f7b1325915630023667d743 -SHA512 (icecat-115.23.1-rh1.tar.bz2) = 9732f3b925b7acc84339ee41014de92b0f34846dc279ba68f49347f3631fc391b44fc1f4263d356c9065a9a1f8a1a6de5a77a6b4cb388acbde85f84ca963e1f2 +SHA512 (icecat-115.24.0-langpacks.tar.gz) = f54612b6f39c72edb0fe874c1c290cea254661566e7062d220d396c7bb5f85c032effc0e7acb70b11e316ed782abda2e5686c666ce9d792c57330318a766d17a +SHA512 (icecat-115.24.0-rh1.tar.bz2) = e4f89dda5b71de63632dc743582d31b0314a51edb3b21766cb8a16dfe44005a56a9b4be08c7d58f605f0ac3c9de9d65495dd079b2eeeb667ec4b65e009d16947 SHA512 (icecat-COPYING-licensefiles.tar.gz) = ed541845170f1d209e322b0def3248d571e0c42c4a17c74e83197e743bd8a128a1475f5312d905c8e70d047eddeac17e604373892eb6d5f1720c5c361849c42c SHA512 (icecat.png) = a3cec16cb15a27c3c91b53e2c534e78b07911011ff1331e450c0baf8e13b76da7cea2a90e5d75191fa88cfbfd40a0a7f3e553e92b64d0043dadd5ad5edfdf81c From b3710024139a3ebb9f08ff9b398355097435044d Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Thu, 26 Jun 2025 00:06:00 +0200 Subject: [PATCH 63/99] Release 128.12.0 --- .gitignore | 2 + build-aarch64-skia.patch | 44 +++++++---- build-disable-elfhack.patch | 11 --- icecat-115.19.0-fix_mz1912663.patch | 82 -------------------- icecat-fix_addon_installation.patch | 36 --------- icecat-lang_download.sh | 2 +- icecat-pgo.patch | 115 ---------------------------- icecat.spec | 33 +------- mozilla-1512162.patch | 31 +------- mozilla-1516803.patch | 15 ---- mozilla-1669639.patch | 15 ---- rhbz-1219542-s390-build.patch | 23 ------ sources | 4 +- 13 files changed, 42 insertions(+), 371 deletions(-) delete mode 100644 build-disable-elfhack.patch delete mode 100644 icecat-115.19.0-fix_mz1912663.patch delete mode 100644 icecat-fix_addon_installation.patch delete mode 100644 icecat-pgo.patch delete mode 100644 mozilla-1516803.patch delete mode 100644 mozilla-1669639.patch delete mode 100644 rhbz-1219542-s390-build.patch diff --git a/.gitignore b/.gitignore index 96fb26d..aefc450 100644 --- a/.gitignore +++ b/.gitignore @@ -280,3 +280,5 @@ /icecat-115.23.1-rh1.tar.bz2 /icecat-115.24.0-langpacks.tar.gz /icecat-115.24.0-rh1.tar.bz2 +/icecat-128.12.0-langpacks.tar.gz +/icecat-128.12.0-rh1.tar.bz2 diff --git a/build-aarch64-skia.patch b/build-aarch64-skia.patch index e669ba5..c6a9be6 100644 --- a/build-aarch64-skia.patch +++ b/build-aarch64-skia.patch @@ -1,22 +1,36 @@ ---- a/gfx/skia/skia/modules/skcms/src/Transform_inl.h.aarch64-skia 2023-06-02 03:15:22.000000000 +0200 -+++ b/gfx/skia/skia/modules/skcms/src/Transform_inl.h 2023-06-05 10:18:46.942777997 +0200 -@@ -189,8 +189,6 @@ SI F F_from_Half(U16 half) { +diff -up firefox-128.0/gfx/skia/skia/modules/skcms/src/Transform_inl.h.aarch64-skia firefox-128.0/gfx/skia/skia/modules/skcms/src/Transform_inl.h +--- firefox-128.0/gfx/skia/skia/modules/skcms/src/Transform_inl.h.aarch64-skia 2024-07-02 11:10:25.047099913 +0200 ++++ firefox-128.0/gfx/skia/skia/modules/skcms/src/Transform_inl.h 2024-07-02 11:15:43.855410571 +0200 +@@ -151,7 +151,7 @@ SI U32 to_fixed(F f) { return (U32)cast + + + SI F F_from_Half(U16 half) { +-#if defined(USING_NEON_F16C) ++#if 0 // defined(USING_NEON_F16C) + return vcvt_f32_f16((float16x4_t)half); + #elif defined(USING_AVX512F) + return (F)_mm512_cvtph_ps((__m256i)half); +@@ -178,7 +178,7 @@ SI F F_from_Half(U16 half) { + __attribute__((no_sanitize("unsigned-integer-overflow"))) + #endif SI U16 Half_from_F(F f) { - #if defined(USING_NEON_FP16) - return bit_pun(f); --#elif defined(USING_NEON_F16C) -- return (U16)vcvt_f16_f32(f); +-#if defined(USING_NEON_F16C) ++#if 0 //defined(USING_NEON_F16C) + return (U16)vcvt_f16_f32(f); #elif defined(USING_AVX512F) return (U16)_mm512_cvtps_ph((__m512 )f, _MM_FROUND_CUR_DIRECTION ); - #elif defined(USING_AVX_F16C) ---- a/gfx/skia/skia/src/opts/SkRasterPipeline_opts.h.aarch64-skia 2023-06-05 10:18:46.941777963 +0200 -+++ b/gfx/skia/skia/src/opts/SkRasterPipeline_opts.h 2023-06-05 10:20:44.924843847 +0200 -@@ -1128,7 +1128,7 @@ SI F from_half(U16 h) { +diff -up firefox-128.0/gfx/skia/skia/src/opts/SkRasterPipeline_opts.h.aarch64-skia firefox-128.0/gfx/skia/skia/src/opts/SkRasterPipeline_opts.h +--- firefox-128.0/gfx/skia/skia/src/opts/SkRasterPipeline_opts.h.aarch64-skia 2024-07-02 11:10:25.048099949 +0200 ++++ firefox-128.0/gfx/skia/skia/src/opts/SkRasterPipeline_opts.h 2024-07-02 11:13:33.384783413 +0200 +@@ -1425,8 +1425,8 @@ SI F from_half(U16 h) { } SI U16 to_half(F f) { --#if defined(JUMPER_IS_NEON) && defined(SK_CPU_ARM64) \ -+#if 0 //defined(JUMPER_IS_NEON) && defined(SK_CPU_ARM64) \ - && !defined(SK_BUILD_FOR_GOOGLE3) // Temporary workaround for some Google3 builds. - return sk_bit_cast(vcvt_f16_f32(f)); +-#if defined(JUMPER_IS_NEON) && defined(SK_CPU_ARM64) +- return (U16)vcvt_f16_f32(f); ++#if 0 //defined(JUMPER_IS_NEON) && defined(SK_CPU_ARM64) ++ return (U16)vcvt_f16_f32(f); + #elif defined(JUMPER_IS_SKX) + return (U16)_mm512_cvtps_ph(f, _MM_FROUND_CUR_DIRECTION); + diff --git a/build-disable-elfhack.patch b/build-disable-elfhack.patch deleted file mode 100644 index 483d4c4..0000000 --- a/build-disable-elfhack.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- firefox-115.0.2/toolkit/moz.configure.disable-elfhack 2023-07-18 12:21:22.507358334 +0200 -+++ firefox-115.0.2/toolkit/moz.configure 2023-07-18 12:52:55.972727498 +0200 -@@ -1520,7 +1520,7 @@ with only_when("--enable-compile-environ - "Cannot enable elfhack with lld." - " Use --enable-linker=bfd, --enable-linker=gold, or --disable-elf-hack" - ) -- return True -+ return False - - set_config("USE_ELF_HACK", use_elf_hack) - diff --git a/icecat-115.19.0-fix_mz1912663.patch b/icecat-115.19.0-fix_mz1912663.patch deleted file mode 100644 index 2168003..0000000 --- a/icecat-115.19.0-fix_mz1912663.patch +++ /dev/null @@ -1,82 +0,0 @@ -# HG changeset patch -# User Emilio Cobos Álvarez -# Date 1723389149 0 -# Node ID 0e6f95e0b777abd64b1224c28ecd1beb614035cf -# Parent ac782ec8027890a85265514cef6b564f07b18a71 -Bug 1912663 - Fix some build issues with cbindgen 0.27. r=firefox-style-system-reviewers,zrhoffman a=pascalc - -It updates serde and syn and they are more strict. In particular, syn 2 -doesn't parse the rust 2015 syntax where try is not a keyword, and serde -rejects duplicate keys. - -Differential Revision: https://phabricator.services.mozilla.com/D219025 - -diff --git a/servo/components/style_traits/values.rs b/servo/components/style_traits/values.rs ---- a/servo/components/style_traits/values.rs -+++ b/servo/components/style_traits/values.rs -@@ -384,21 +384,21 @@ impl Separator for Space { - - fn parse<'i, 't, F, T, E>( - input: &mut Parser<'i, 't>, - mut parse_one: F, - ) -> Result, ParseError<'i, E>> - where - F: for<'tt> FnMut(&mut Parser<'i, 'tt>) -> Result>, - { -- input.skip_whitespace(); // Unnecessary for correctness, but may help try() rewind less. -+ input.skip_whitespace(); // Unnecessary for correctness, but may help try_parse() rewind less. - let mut results = vec![parse_one(input)?]; - loop { -- input.skip_whitespace(); // Unnecessary for correctness, but may help try() rewind less. -- if let Ok(item) = input.try(&mut parse_one) { -+ input.skip_whitespace(); // Unnecessary for correctness, but may help try_parse() rewind less. -+ if let Ok(item) = input.try_parse(&mut parse_one) { - results.push(item); - } else { - return Ok(results); - } - } - } - } - -@@ -409,24 +409,24 @@ impl Separator for CommaWithSpace { - - fn parse<'i, 't, F, T, E>( - input: &mut Parser<'i, 't>, - mut parse_one: F, - ) -> Result, ParseError<'i, E>> - where - F: for<'tt> FnMut(&mut Parser<'i, 'tt>) -> Result>, - { -- input.skip_whitespace(); // Unnecessary for correctness, but may help try() rewind less. -+ input.skip_whitespace(); // Unnecessary for correctness, but may help try_parse() rewind less. - let mut results = vec![parse_one(input)?]; - loop { -- input.skip_whitespace(); // Unnecessary for correctness, but may help try() rewind less. -+ input.skip_whitespace(); // Unnecessary for correctness, but may help try_parse() rewind less. - let comma_location = input.current_source_location(); -- let comma = input.try(|i| i.expect_comma()).is_ok(); -- input.skip_whitespace(); // Unnecessary for correctness, but may help try() rewind less. -- if let Ok(item) = input.try(&mut parse_one) { -+ let comma = input.try_parse(|i| i.expect_comma()).is_ok(); -+ input.skip_whitespace(); // Unnecessary for correctness, but may help try_parse() rewind less. -+ if let Ok(item) = input.try_parse(&mut parse_one) { - results.push(item); - } else if comma { - return Err(comma_location.new_unexpected_token_error(Token::Comma)); - } else { - break; - } - } - Ok(results) -diff --git a/servo/ports/geckolib/cbindgen.toml b/servo/ports/geckolib/cbindgen.toml ---- a/servo/ports/geckolib/cbindgen.toml -+++ b/servo/ports/geckolib/cbindgen.toml -@@ -318,7 +318,6 @@ - "Keyframe" = "Keyframe" - "nsChangeHint" = "nsChangeHint" - "ServoElementSnapshotTable" = "ServoElementSnapshotTable" --"Keyframe" = "Keyframe" - "ComputedKeyframeValues" = "ComputedKeyframeValues" - "OriginFlags" = "OriginFlags" - "ServoTraversalFlags" = "ServoTraversalFlags" diff --git a/icecat-fix_addon_installation.patch b/icecat-fix_addon_installation.patch deleted file mode 100644 index 5cc140d..0000000 --- a/icecat-fix_addon_installation.patch +++ /dev/null @@ -1,36 +0,0 @@ -# Fixes installation of those addons which don't have ID on IceCat ("Cannot find id for addon" error). ---- a/toolkit/mozapps/extensions/internal/XPIInstall.jsm -+++ b/toolkit/mozapps/extensions/internal/XPIInstall.jsm -@@ -627,8 +627,30 @@ - throw new Error(`Extension is signed with an invalid id (${addon.id})`); - } - } -- if (!addon.id && aLocation.isTemporary) { -- addon.id = generateTemporaryInstallID(aPackage.file); -+ if (!addon.id) { -+ if (aInstallLocation.name == KEY_APP_TEMPORARY) { -+ addon.id = generateTemporaryInstallID(aZipReader.file); -+ } else { -+ try { -+ let sigInput = aZipReader.getInputStream("META-INF/cose.sig"); -+ let sigBinary = Cc['@mozilla.org/binaryinputstream;1'] -+ .createInstance(Ci.nsIBinaryInputStream); -+ sigBinary.setInputStream(sigInput); -+ var sig = '' -+ var sigCount; -+ while ((sigCount = sigBinary.available()) > 0) { -+ sig += sigBinary.readBytes(sigCount); -+ } -+ let sigMatch = sig.match(/\{\w{8}-\w{4}-\w{4}-\w{4}-\w{12}\}/g) -+ if (sigMatch && sigMatch.length == 1) { -+ addon.id = sigMatch[0] -+ } else { -+ logger.warn("Failed to find addon id"); -+ } -+ } catch (e) { -+ logger.warn("Failed to process META-INF/cose.sig"); -+ } -+ } - } - } - diff --git a/icecat-lang_download.sh b/icecat-lang_download.sh index 1bce42c..945dd4b 100755 --- a/icecat-lang_download.sh +++ b/icecat-lang_download.sh @@ -1,6 +1,6 @@ #!/bin/bash -VERSION=115.24.0 +VERSION=128.12.0 URL=https://ftp.mozilla.org/pub/firefox/releases/${VERSION}esr/linux-x86_64/xpi/ for u in $URL; do diff --git a/icecat-pgo.patch b/icecat-pgo.patch deleted file mode 100644 index 3b9fde4..0000000 --- a/icecat-pgo.patch +++ /dev/null @@ -1,115 +0,0 @@ -diff -up firefox-99.0/build/moz.configure/lto-pgo.configure.pgo firefox-99.0/build/moz.configure/lto-pgo.configure ---- firefox-99.0/build/moz.configure/lto-pgo.configure.pgo 2022-03-31 01:24:38.000000000 +0200 -+++ firefox-99.0/build/moz.configure/lto-pgo.configure 2022-04-04 10:15:45.387694143 +0200 -@@ -247,8 +247,8 @@ def lto( - cflags.append("-flto") - ldflags.append("-flto") - else: -- cflags.append("-flto=thin") -- ldflags.append("-flto=thin") -+ cflags.append("-flto") -+ ldflags.append("-flto") - - if target.os == "Android" and value == "cross": - # Work around https://github.com/rust-lang/rust/issues/90088 -@@ -264,7 +264,7 @@ def lto( - if value == "full": - cflags.append("-flto") - else: -- cflags.append("-flto=thin") -+ cflags.append("-flto") - # With clang-cl, -flto can only be used with -c or -fuse-ld=lld. - # AC_TRY_LINKs during configure don't have -c, so pass -fuse-ld=lld. - cflags.append("-fuse-ld=lld") -diff -up firefox-99.0/build/pgo/profileserver.py.pgo firefox-99.0/build/pgo/profileserver.py ---- firefox-99.0/build/pgo/profileserver.py.pgo 2022-03-31 01:24:38.000000000 +0200 -+++ firefox-99.0/build/pgo/profileserver.py 2022-04-04 10:15:45.387694143 +0200 -@@ -11,7 +11,7 @@ - import subprocess - - import mozcrash --from mozbuild.base import MozbuildObject, BinaryNotFoundException -+from mozbuild.base import MozbuildObject, BinaryNotFoundException, BuildEnvironmentNotFoundException - from mozfile import TemporaryDirectory - from mozhttpd import MozHttpd - from mozprofile import IceCatProfile, Preferences -@@ -87,9 +87,22 @@ - locations = ServerLocations() - locations.add_host(host="127.0.0.1", port=PORT, options="primary,privileged") - -- old_profraw_files = glob.glob("*.profraw") -- for f in old_profraw_files: -- os.remove(f) -+ using_gcc = False -+ try: -+ if build.config_environment.substs.get('CC_TYPE') == 'gcc': -+ using_gcc = True -+ except BuildEnvironmentNotFoundException: -+ pass -+ -+ if using_gcc: -+ for dirpath, _, filenames in os.walk('.'): -+ for f in filenames: -+ if f.endswith('.gcda'): -+ os.remove(os.path.join(dirpath, f)) -+ else: -+ old_profraw_files = glob.glob('*.profraw') -+ for f in old_profraw_files: -+ os.remove(f) - - with TemporaryDirectory() as profilePath: - # TODO: refactor this into mozprofile -@@ -212,6 +225,9 @@ - if get_crashreports(profilePath, name="IceCat exited successfully?") != 0: - print("IceCat exited successfully, but produced a crashreport") - sys.exit(1) -+ print('Copying profile data....') -+ os.system('pwd'); -+ os.system('tar cf profdata.tar.gz `find . -name "*.gcda"`; cd ..; tar xf instrumented/profdata.tar.gz;'); - - llvm_profdata = env.get("LLVM_PROFDATA") - if llvm_profdata: -diff -up firefox-99.0/build/unix/mozconfig.unix.pgo firefox-99.0/build/unix/mozconfig.unix ---- firefox-99.0/build/unix/mozconfig.unix.pgo 2022-03-31 01:24:38.000000000 +0200 -+++ firefox-99.0/build/unix/mozconfig.unix 2022-04-04 10:15:45.387694143 +0200 -@@ -4,6 +4,15 @@ if [ -n "$FORCE_GCC" ]; then - CC="$MOZ_FETCHES_DIR/gcc/bin/gcc" - CXX="$MOZ_FETCHES_DIR/gcc/bin/g++" - -+ if [ -n "$MOZ_PGO" ]; then -+ if [ -z "$USE_ARTIFACT" ]; then -+ ac_add_options --enable-lto -+ fi -+ export AR="$topsrcdir/gcc/bin/gcc-ar" -+ export NM="$topsrcdir/gcc/bin/gcc-nm" -+ export RANLIB="$topsrcdir/gcc/bin/gcc-ranlib" -+ fi -+ - # We want to make sure we use binutils and other binaries in the tooltool - # package. - mk_add_options "export PATH=$MOZ_FETCHES_DIR/gcc/bin:$PATH" -diff -up firefox-99.0/extensions/spellcheck/src/moz.build.pgo firefox-99.0/extensions/spellcheck/src/moz.build ---- firefox-99.0/extensions/spellcheck/src/moz.build.pgo 2022-03-31 01:24:50.000000000 +0200 -+++ firefox-99.0/extensions/spellcheck/src/moz.build 2022-04-04 10:15:45.387694143 +0200 -@@ -28,3 +28,5 @@ EXPORTS.mozilla += [ - "mozInlineSpellChecker.h", - "mozSpellChecker.h", - ] -+ -+CXXFLAGS += ['-fno-devirtualize'] -diff -up firefox-99.0/toolkit/components/terminator/nsTerminator.cpp.pgo firefox-99.0/toolkit/components/terminator/nsTerminator.cpp ---- firefox-99.0/toolkit/components/terminator/nsTerminator.cpp.pgo 2022-04-04 10:15:45.387694143 +0200 -+++ firefox-99.0/toolkit/components/terminator/nsTerminator.cpp 2022-04-04 10:19:07.022239556 +0200 -@@ -466,6 +466,11 @@ void nsTerminator::StartWatchdog() { - } - #endif - -+ // Disable watchdog for PGO train builds - writting profile information at -+ // exit may take time and it is better to make build hang rather than -+ // silently produce poorly performing binary. -+ crashAfterMS = INT32_MAX; -+ - UniquePtr options(new Options()); - // crashAfterTicks is guaranteed to be > 0 as - // crashAfterMS >= ADDITIONAL_WAIT_BEFORE_CRASH_MS >> HEARTBEAT_INTERVAL_MS - diff --git a/icecat.spec b/icecat.spec index f4c2135..65d55ad 100644 --- a/icecat.spec +++ b/icecat.spec @@ -86,8 +86,6 @@ ExcludeArch: %{ix86} %{arm} %global libvpx_version 1.8.2 %endif -%global disable_elfhack 1 - # Use clang? %bcond_without toolchain_clang @@ -101,8 +99,8 @@ ExcludeArch: %{ix86} %{arm} %global __requires_exclude ^(%%(find %{buildroot}%{icecatappdir} -name '*.so' | xargs -n1 basename | sort -u | paste -s -d '|' -)) Name: icecat -Epoch: 2 -Version: 115.24.0 +Epoch: 3 +Version: 128.12.0 Release: %autorelease -e %{redhat_ver} Summary: GNU version of Firefox browser @@ -144,9 +142,7 @@ Source19: run-wayland-compositor # Build patches # Fixes installation of those addons which don't have ID on IceCat ("Cannot find id for addon" error). -Patch1: %{name}-fix_addon_installation.patch Patch2: %{name}-commasplit.patch -Patch5: rhbz-1219542-s390-build.patch # With clang LLVM 16 rust-bindgen 0.56.0 is too old, combined # https://github.com/rust-lang/rust-bindgen/pull/2319 @@ -158,9 +154,7 @@ Patch7: rust-bindgen-2319-2339.patch Patch8: mp4parse-rust-8b5b652d38e007e736bb442ccd5aa5ed699db100.patch Patch40: build-aarch64-skia.patch -Patch41: build-disable-elfhack.patch Patch44: build-arm-libopus.patch -Patch54: mozilla-1669639.patch # Fedora specific patches Patch219: rhbz-1173156.patch @@ -179,7 +173,6 @@ Patch403: icecat-python3.11-open-U.patch Patch404: icecat-python3.11-regex-inline-flags.patch Patch412: mozilla-1337988.patch Patch422: mozilla-1580174-webrtc-popup.patch -Patch425: icecat-115.19.0-fix_mz1912663.patch # Patch for GCC-15 Patch426: icecat-115.19.0-fix_mz1917964.patch @@ -187,8 +180,6 @@ Patch426: icecat-115.19.0-fix_mz1917964.patch Patch423: mozilla-1512162.patch # PGO/LTO patches -Patch600: %{name}-pgo.patch -Patch602: mozilla-1516803.patch Patch603: %{name}-gcc-always-inline.patch BuildRequires: alsa-lib-devel @@ -358,15 +349,7 @@ and translations langpack add-ons. # Copy license files tar -xf %{SOURCE5} -%patch -P 1 -p 1 -b .fix_addon_installation %patch -P 2 -p 1 -b .commasplit -%ifarch s390x -%patch -P 5 -p 1 -b .rhbz-1219542-s390 -%endif - -%if 0%{?disable_elfhack} -%patch -P 41 -p 1 -b .disable-elfhack -%endif # Fedora patches %patch -P 219 -p 1 -b .rhbz-1173156 @@ -385,16 +368,7 @@ tar -xf %{SOURCE5} %ifarch %{power64} %patch -P 423 -p 1 -b .1512162 %endif -%patch -P 425 -p 1 -b .1912663 %patch -P 426 -p 1 -b .1917964 - -%patch -P 54 -p 1 -b .1669639 - -# PGO patches -%if 0%{?build_with_pgo} -%patch -P 600 -p 1 -b .pgo -%patch -P 602 -p 1 -b .1516803 -%endif %patch -P 603 -p1 -b .inline # Remove default configuration and copy the customized one @@ -481,8 +455,9 @@ echo "ac_add_options --with-libclang-path=`llvm-config%{?llvm_suffix} --libdir`" #echo "ac_add_options --with-clang-path=%%{_bindir}/clang%%{?llvm_suffix}" >> .mozconfig %endif -%ifarch s390x +%ifarch s390x %{arm64} echo "ac_add_options --disable-jit" >> .mozconfig +echo "ac_add_options --disable-elf-hack" >> .mozconfig %endif %if 0%{?build_with_pgo} diff --git a/mozilla-1512162.patch b/mozilla-1512162.patch index 99a0b14..02e9585 100644 --- a/mozilla-1512162.patch +++ b/mozilla-1512162.patch @@ -1,7 +1,6 @@ -diff -up firefox-68.0.1/js/xpconnect/src/XPCWrappedNative.cpp.1512162 firefox-68.0.1/js/xpconnect/src/XPCWrappedNative.cpp ---- firefox-68.0.1/js/xpconnect/src/XPCWrappedNative.cpp.1512162 2019-07-17 22:51:30.000000000 +0200 -+++ firefox-68.0.1/js/xpconnect/src/XPCWrappedNative.cpp 2019-07-25 08:08:18.512528313 +0200 -@@ -1092,7 +1092,7 @@ class MOZ_STACK_CLASS CallMethodHelper f +--- a/js/xpconnect/src/XPCWrappedNative.cpp.1512162 2019-07-17 22:51:30.000000000 +0200 ++++ b/js/xpconnect/src/XPCWrappedNative.cpp 2019-07-25 08:08:18.512528313 +0200 +@@ -1055,7 +1055,7 @@ MOZ_ALWAYS_INLINE bool GetOutParamSource(uint8_t paramIndex, MutableHandleValue srcp) const; @@ -10,7 +9,7 @@ diff -up firefox-68.0.1/js/xpconnect/src/XPCWrappedNative.cpp.1512162 firefox-68 MOZ_ALWAYS_INLINE bool QueryInterfaceFastPath(); -@@ -1139,7 +1139,7 @@ class MOZ_STACK_CLASS CallMethodHelper f +@@ -1102,7 +1102,7 @@ ~CallMethodHelper(); @@ -19,25 +18,3 @@ diff -up firefox-68.0.1/js/xpconnect/src/XPCWrappedNative.cpp.1512162 firefox-68 // Trace implementation so we can put our CallMethodHelper in a Rooted. void trace(JSTracer* aTrc); -@@ -1157,6 +1157,10 @@ bool XPCWrappedNative::CallMethod(XPCCal - return helper.get().Call(); - } - -+#if (__GNUC__ && __linux__ && __PPC64__ && _LITTLE_ENDIAN) -+// Work around a compiler bug on ppc64le (bug 1512162). -+__attribute__ ((noinline,noclone)) -+#endif - bool CallMethodHelper::Call() { - mCallContext.SetRetVal(JS::UndefinedValue()); - -@@ -1315,6 +1319,10 @@ bool CallMethodHelper::GetOutParamSource - return true; - } - -+#if (__GNUC__ && __linux__ && __PPC64__ && _LITTLE_ENDIAN) -+// Work around a compiler bug on ppc64le (bug 1512162). -+__attribute__ ((noinline,noclone)) -+#endif - bool CallMethodHelper::GatherAndConvertResults() { - // now we iterate through the native params to gather and convert results - uint8_t paramCount = mMethodInfo->GetParamCount(); diff --git a/mozilla-1516803.patch b/mozilla-1516803.patch deleted file mode 100644 index 6c4ff59..0000000 --- a/mozilla-1516803.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff --git a/security/sandbox/linux/moz.build b/security/sandbox/linux/moz.build ---- a/security/sandbox/linux/moz.build -+++ b/security/sandbox/linux/moz.build -@@ -114,9 +114,8 @@ - # gcc lto likes to put the top level asm in syscall.cc in a different partition - # from the function using it which breaks the build. Work around that by - # forcing there to be only one partition. --for f in CONFIG["OS_CXXFLAGS"]: -- if f.startswith("-flto") and CONFIG["CC_TYPE"] != "clang": -- LDFLAGS += ["--param lto-partitions=1"] -+if CONFIG['CC_TYPE'] != 'clang': -+ LDFLAGS += ['--param', 'lto-partitions=1'] - - DEFINES["NS_NO_XPCOM"] = True - DisableStlWrapping() diff --git a/mozilla-1669639.patch b/mozilla-1669639.patch deleted file mode 100644 index 3639133..0000000 --- a/mozilla-1669639.patch +++ /dev/null @@ -1,15 +0,0 @@ ---- firefox-81.0.1/build/mach_initialize.py.old 2020-10-06 14:16:06.212974910 +0200 -+++ firefox-81.0.1/build/mach_initialize.py 2020-10-06 14:19:03.313179557 +0200 -@@ -507,7 +507,10 @@ class ImportHook(object): - # doesn't happen or because it doesn't matter). - if not os.path.exists(module.__file__[:-1]): - if os.path.exists(module.__file__): -- os.remove(module.__file__) -+ try: -+ os.remove(module.__file__) -+ except: -+ pass - del sys.modules[module.__name__] - module = self(name, globals, locals, fromlist, level) - - diff --git a/rhbz-1219542-s390-build.patch b/rhbz-1219542-s390-build.patch deleted file mode 100644 index f94e43a..0000000 --- a/rhbz-1219542-s390-build.patch +++ /dev/null @@ -1,23 +0,0 @@ -diff -up firefox-55.0/js/src/old-configure.in.rhbz-1219542-s390 firefox-55.0/js/src/old-configure.in ---- firefox-55.0/js/src/old-configure.in.rhbz-1219542-s390 2017-07-31 18:20:48.000000000 +0200 -+++ firefox-55.0/js/src/old-configure.in 2017-08-02 14:31:32.190243669 +0200 -@@ -541,7 +541,7 @@ case "$host" in - - *-linux*|*-kfreebsd*-gnu|*-gnu*) - HOST_CFLAGS="$HOST_CFLAGS -DXP_UNIX" -- HOST_OPTIMIZE_FLAGS="${HOST_OPTIMIZE_FLAGS=-O3}" -+ HOST_OPTIMIZE_FLAGS="${HOST_OPTIMIZE_FLAGS=-O1}" - ;; - - *) -@@ -617,8 +617,8 @@ case "$target" in - - *-*linux*) - if test "$GNU_CC" -o "$GNU_CXX"; then -- MOZ_PGO_OPTIMIZE_FLAGS="-O3" -- MOZ_OPTIMIZE_FLAGS="-O3" -+ MOZ_PGO_OPTIMIZE_FLAGS="-O1" -+ MOZ_OPTIMIZE_FLAGS="-O1" - if test -z "$CLANG_CC"; then - MOZ_OPTIMIZE_FLAGS="-freorder-blocks $MOZ_OPTIMIZE_FLAGS" - fi diff --git a/sources b/sources index 2603140..44be745 100644 --- a/sources +++ b/sources @@ -1,5 +1,5 @@ SHA512 (cbindgen-vendor.tar.xz) = 6d354d65674395b8171f262ae9aa08f656fdd83b6d29d70bd1ad2f13c4a52db81df780cfdf6ac86e9d1f16426c9ab3cdc0160f0785a0909ad7525fd8a9bc3b25 -SHA512 (icecat-115.24.0-langpacks.tar.gz) = f54612b6f39c72edb0fe874c1c290cea254661566e7062d220d396c7bb5f85c032effc0e7acb70b11e316ed782abda2e5686c666ce9d792c57330318a766d17a -SHA512 (icecat-115.24.0-rh1.tar.bz2) = e4f89dda5b71de63632dc743582d31b0314a51edb3b21766cb8a16dfe44005a56a9b4be08c7d58f605f0ac3c9de9d65495dd079b2eeeb667ec4b65e009d16947 +SHA512 (icecat-128.12.0-langpacks.tar.gz) = c3caecad5756513409af6cd8426a1a0e6a05c6286756fd4350d5ca1fac9a110a8ea3bdac94451c2a5d1824ff5a73c3b54f3754c0ab19203aea22f7001ca46886 +SHA512 (icecat-128.12.0-rh1.tar.bz2) = d1d3724c706d81246d2a35834236a2eab75deb51434a215f07f24221f6b75369d7d702724d175420c74cefa23c0081a28421dcbe85ead489e5bffac28bf2314a SHA512 (icecat-COPYING-licensefiles.tar.gz) = ed541845170f1d209e322b0def3248d571e0c42c4a17c74e83197e743bd8a128a1475f5312d905c8e70d047eddeac17e604373892eb6d5f1720c5c361849c42c SHA512 (icecat.png) = a3cec16cb15a27c3c91b53e2c534e78b07911011ff1331e450c0baf8e13b76da7cea2a90e5d75191fa88cfbfd40a0a7f3e553e92b64d0043dadd5ad5edfdf81c From 1d3f9fe61f5577d6e313eeb50c0c43c7aa5a131d Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Thu, 26 Jun 2025 16:53:04 +0200 Subject: [PATCH 64/99] Set CXXFLAGS without -fpermissive --- icecat.spec | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/icecat.spec b/icecat.spec index 65d55ad..4f6e937 100644 --- a/icecat.spec +++ b/icecat.spec @@ -550,10 +550,13 @@ MOZ_LINK_FLAGS="-Wl,--no-keep-memory -Wl,--reduce-memory-overheads" export RUSTFLAGS="-Cdebuginfo=0" %endif -export CFLAGS="$MOZ_OPT_FLAGS -std=gnu17" -export CXXFLAGS="$MOZ_OPT_FLAGS -fpermissive -std=gnu++17" -export LDFLAGS=$MOZ_LINK_FLAGS +# error "STL code can only be used with -fno-exceptions" +CXXFLAGS=$(echo "$MOZ_OPT_FLAGS" | %{__sed} -e 's/-fexceptions/-fno-exceptions/') +export CXXFLAGS="$CXXFLAGS" +export CXXFLAGS="$CXXFLAGS -fpermissive -std=gnu++17" +export CFLAGS="$MOZ_OPT_FLAGS -std=gnu17" +export LDFLAGS=$MOZ_LINK_FLAGS export PREFIX='%{_prefix}' export LIBDIR='%{_libdir}' export PKG_CONFIG="`which pkg-config`" From 4ce587552c2e8895c5b3933ef9fcce99f7be1676 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Thu, 26 Jun 2025 17:44:25 +0200 Subject: [PATCH 65/99] Remove old configuration option --- icecat.spec | 5 ----- 1 file changed, 5 deletions(-) diff --git a/icecat.spec b/icecat.spec index 4f6e937..4245c9d 100644 --- a/icecat.spec +++ b/icecat.spec @@ -457,7 +457,6 @@ echo "ac_add_options --with-libclang-path=`llvm-config%{?llvm_suffix} --libdir`" %ifarch s390x %{arm64} echo "ac_add_options --disable-jit" >> .mozconfig -echo "ac_add_options --disable-elf-hack" >> .mozconfig %endif %if 0%{?build_with_pgo} @@ -723,9 +722,6 @@ ln -sf %{icecatappdir}/%{name}-bin ${RPM_BUILD_ROOT}%{icecatappdir}/%{name} rm -rf ${RPM_BUILD_ROOT}%{icecatappdir}/dictionaries ln -s %{_datadir}/hunspell ${RPM_BUILD_ROOT}%{icecatappdir}/dictionaries -# Copy over run-icecat.sh -cp -p build/unix/run-%{name}.sh %{buildroot}%{icecatappdir}/ - # Remove unused directories rm -rf %{buildroot}%{_libdir}/%{icecat_devel} rm -rf %{buildroot}%{_datadir}/idl/%{icecat_ver} @@ -786,7 +782,6 @@ desktop-file-validate %{buildroot}%{_datadir}/applications/*.desktop %{icecatappdir}/*.so %{icecatappdir}/*.ini %{icecatappdir}/omni.ja -%{icecatappdir}/run-icecat.sh %{icecatappdir}/dependentlibs.list %{icecatappdir}/plugin-container %{icecatappdir}/pingsender From e5a96df9ac9e4756df732436f2fe5cba57958b08 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Thu, 26 Jun 2025 19:23:54 +0200 Subject: [PATCH 66/99] Remove directory --- icecat.spec | 1 - 1 file changed, 1 deletion(-) diff --git a/icecat.spec b/icecat.spec index 4245c9d..544d495 100644 --- a/icecat.spec +++ b/icecat.spec @@ -783,7 +783,6 @@ desktop-file-validate %{buildroot}%{_datadir}/applications/*.desktop %{icecatappdir}/*.ini %{icecatappdir}/omni.ja %{icecatappdir}/dependentlibs.list -%{icecatappdir}/plugin-container %{icecatappdir}/pingsender %{icecatappdir}/gmp-clearkey/ From 21b334e53d5822e38e658413e2682c0858bb72b7 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Thu, 26 Jun 2025 23:02:01 +0200 Subject: [PATCH 67/99] Fix Epoch --- icecat.spec | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/icecat.spec b/icecat.spec index 544d495..6c3d12d 100644 --- a/icecat.spec +++ b/icecat.spec @@ -303,8 +303,8 @@ Suggests: mozilla-ublock-origin Provides: webclient %if 0%{?fedora} >= 40 -Obsoletes: icecat-wayland < 2:115.19.0-1 -Obsoletes: icecat-x11 < 2:115.19.0-1 +Obsoletes: icecat-wayland < 3:128.12.0-1 +Obsoletes: icecat-x11 < 3:128.12.0-1 %endif %description @@ -335,7 +335,7 @@ Extensions included to this version of IceCat: %if %{with langpacks_subpkg} %package langpacks Summary: IceCat langpacks -Requires: %{name} = 2:%{version}-%{release} +Requires: %{name} = 3:%{version}-%{release} %description langpacks The icecat-langpacks package contains all the localization and translations langpack add-ons. From ad3a48a2cd6a817a80244116f7fcd573cccac54f Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Fri, 27 Jun 2025 12:41:37 +0200 Subject: [PATCH 68/99] Add v4l2test file for ARM64 and RISC-V --- icecat.spec | 3 +++ 1 file changed, 3 insertions(+) diff --git a/icecat.spec b/icecat.spec index 6c3d12d..5dd651b 100644 --- a/icecat.spec +++ b/icecat.spec @@ -785,6 +785,9 @@ desktop-file-validate %{buildroot}%{_datadir}/applications/*.desktop %{icecatappdir}/dependentlibs.list %{icecatappdir}/pingsender %{icecatappdir}/gmp-clearkey/ +%ifarch aarch64 riscv64 +%{icecatappdir}/v4l2test +%endif %changelog %autochangelog From ae640ad6619bd8ca8c7fdf1c2bebc96c4463d077 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Fri, 27 Jun 2025 13:38:59 +0200 Subject: [PATCH 69/99] Set linker flags --- icecat.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/icecat.spec b/icecat.spec index 5dd651b..a043f65 100644 --- a/icecat.spec +++ b/icecat.spec @@ -555,7 +555,7 @@ export CXXFLAGS="$CXXFLAGS" export CXXFLAGS="$CXXFLAGS -fpermissive -std=gnu++17" export CFLAGS="$MOZ_OPT_FLAGS -std=gnu17" -export LDFLAGS=$MOZ_LINK_FLAGS +export LDFLAGS="%{__global_ldflags} $MOZ_LINK_FLAGS -L%{_libdir} -L%{icecatappdir}" export PREFIX='%{_prefix}' export LIBDIR='%{_libdir}' export PKG_CONFIG="`which pkg-config`" From 7da8ecdbdf49ed8c5d906197f15d7f2b508bf5c9 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Fri, 27 Jun 2025 16:12:21 +0200 Subject: [PATCH 70/99] Fix launcher --- icecat.sh.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/icecat.sh.in b/icecat.sh.in index f74bd16..ef9c34d 100644 --- a/icecat.sh.in +++ b/icecat.sh.in @@ -64,7 +64,7 @@ MOZ_DIST_BIN="$MOZ_LIB_DIR/icecat" MOZ_LANGPACKS_DIR="$MOZ_DIST_BIN/langpacks" MOZ_EXTENSIONS_PROFILE_DIR="$HOME/.mozilla/extensions/{ec8030f7-c20a-464f-9b0e-13a3a9e97384}" MOZ_PROGRAM="$MOZ_DIST_BIN/$MOZ_FIREFOX_FILE" -MOZ_LAUNCHER="$MOZ_DIST_BIN/run-icecat.sh" +MOZ_LAUNCHER="$MOZ_DIST_BIN/icecat-bin" GETENFORCE_FILE="/usr/sbin/getenforce" ## From b3959a29a60c3c9ddd6d06ceeb9eb0aeb71dd8c5 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Fri, 27 Jun 2025 21:10:31 +0200 Subject: [PATCH 71/99] Update launcher --- icecat.sh.in | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/icecat.sh.in b/icecat.sh.in index ef9c34d..a269749 100644 --- a/icecat.sh.in +++ b/icecat.sh.in @@ -64,7 +64,7 @@ MOZ_DIST_BIN="$MOZ_LIB_DIR/icecat" MOZ_LANGPACKS_DIR="$MOZ_DIST_BIN/langpacks" MOZ_EXTENSIONS_PROFILE_DIR="$HOME/.mozilla/extensions/{ec8030f7-c20a-464f-9b0e-13a3a9e97384}" MOZ_PROGRAM="$MOZ_DIST_BIN/$MOZ_FIREFOX_FILE" -MOZ_LAUNCHER="$MOZ_DIST_BIN/icecat-bin" +MOZ_LAUNCHER="$MOZ_DIST_BIN/icecat" GETENFORCE_FILE="/usr/sbin/getenforce" ## @@ -269,13 +269,11 @@ do ;; esac done - -# Run the browser -debugging=0 -if [ $debugging = 1 ] -then - echo $MOZ_LAUNCHER $script_args $MOZ_PROGRAM "$@" -fi + +## Allow downgrade because during distro upgrade the build time can be +## older in newer version than the previous one. +## +export MOZ_ALLOW_DOWNGRADE=1 -exec $MOZ_LAUNCHER $script_args $MOZ_PROGRAM "$@" +exec $MOZ_PROGRAM "$@" From 4b1c39c5226da827afc8f830c749f18e8a866651 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Fri, 27 Jun 2025 21:18:30 +0200 Subject: [PATCH 72/99] Use system cbindgen --- icecat.spec | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/icecat.spec b/icecat.spec index a043f65..66c60a8 100644 --- a/icecat.spec +++ b/icecat.spec @@ -9,7 +9,7 @@ ExcludeArch: %{ix86} %{arm} # Bundled cbindgen makes build slow. # Enable only if system cbindgen is not available. -%global use_bundled_cbindgen 1 +%global use_bundled_cbindgen 0 #################### @@ -759,6 +759,7 @@ desktop-file-validate %{buildroot}%{_datadir}/applications/*.desktop %if %{with langpacks_subpkg} %files +%dir %{langpackdir} %else %files -f %{name}.lang %endif @@ -769,9 +770,6 @@ desktop-file-validate %{buildroot}%{_datadir}/applications/*.desktop %{_datadir}/icons/hicolor/*x*/apps/%{name}*.png %{_metainfodir}/*.appdata.xml %dir %{icecatappdir} -%if %{with langpacks} -%dir %{langpackdir} -%endif %{icecatappdir}/glxtest %{icecatappdir}/vaapitest %{icecatappdir}/browser/ @@ -785,7 +783,7 @@ desktop-file-validate %{buildroot}%{_datadir}/applications/*.desktop %{icecatappdir}/dependentlibs.list %{icecatappdir}/pingsender %{icecatappdir}/gmp-clearkey/ -%ifarch aarch64 riscv64 +%ifarch %{arm64} riscv64 %{icecatappdir}/v4l2test %endif From b37045e88b41f7830b57229d49b77018139e5b9a Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Wed, 23 Jul 2025 17:00:39 +0200 Subject: [PATCH 73/99] Release 125.13.0 --- .gitignore | 2 ++ icecat-lang_download.sh | 2 +- icecat.spec | 2 +- sources | 4 ++-- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index aefc450..71763df 100644 --- a/.gitignore +++ b/.gitignore @@ -282,3 +282,5 @@ /icecat-115.24.0-rh1.tar.bz2 /icecat-128.12.0-langpacks.tar.gz /icecat-128.12.0-rh1.tar.bz2 +/icecat-128.13.0-langpacks.tar.gz +/icecat-128.13.0-rh1.tar.bz2 diff --git a/icecat-lang_download.sh b/icecat-lang_download.sh index 945dd4b..2ef85df 100755 --- a/icecat-lang_download.sh +++ b/icecat-lang_download.sh @@ -1,6 +1,6 @@ #!/bin/bash -VERSION=128.12.0 +VERSION=128.13.0 URL=https://ftp.mozilla.org/pub/firefox/releases/${VERSION}esr/linux-x86_64/xpi/ for u in $URL; do diff --git a/icecat.spec b/icecat.spec index 66c60a8..188fba3 100644 --- a/icecat.spec +++ b/icecat.spec @@ -100,7 +100,7 @@ ExcludeArch: %{ix86} %{arm} Name: icecat Epoch: 3 -Version: 128.12.0 +Version: 128.13.0 Release: %autorelease -e %{redhat_ver} Summary: GNU version of Firefox browser diff --git a/sources b/sources index 44be745..ccec311 100644 --- a/sources +++ b/sources @@ -1,5 +1,5 @@ SHA512 (cbindgen-vendor.tar.xz) = 6d354d65674395b8171f262ae9aa08f656fdd83b6d29d70bd1ad2f13c4a52db81df780cfdf6ac86e9d1f16426c9ab3cdc0160f0785a0909ad7525fd8a9bc3b25 -SHA512 (icecat-128.12.0-langpacks.tar.gz) = c3caecad5756513409af6cd8426a1a0e6a05c6286756fd4350d5ca1fac9a110a8ea3bdac94451c2a5d1824ff5a73c3b54f3754c0ab19203aea22f7001ca46886 -SHA512 (icecat-128.12.0-rh1.tar.bz2) = d1d3724c706d81246d2a35834236a2eab75deb51434a215f07f24221f6b75369d7d702724d175420c74cefa23c0081a28421dcbe85ead489e5bffac28bf2314a +SHA512 (icecat-128.13.0-langpacks.tar.gz) = b0d4ac1f6014f23d587e9168689b292c29139794bf5c9f24ef0ab296add4d3198403eddfd7c8c67ae493ce533e1294b3e74e977e418a3455510f6219e2391d87 +SHA512 (icecat-128.13.0-rh1.tar.bz2) = f16c8a329db890be32f8024a5852667500d8a2a8a8cedcbbb9e473c7a65f8ef90002210388ccb84716463d10e5f56048abdf27fb479d669b489be502cf4cadcf SHA512 (icecat-COPYING-licensefiles.tar.gz) = ed541845170f1d209e322b0def3248d571e0c42c4a17c74e83197e743bd8a128a1475f5312d905c8e70d047eddeac17e604373892eb6d5f1720c5c361849c42c SHA512 (icecat.png) = a3cec16cb15a27c3c91b53e2c534e78b07911011ff1331e450c0baf8e13b76da7cea2a90e5d75191fa88cfbfd40a0a7f3e553e92b64d0043dadd5ad5edfdf81c From e42fb72424b97a8b06f2f77be5656433f29a10b8 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 24 Jul 2025 17:32:58 +0000 Subject: [PATCH 74/99] Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild From b2f3ed3cfef6ead95efd86c8f4b7a21ca727b89e Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Wed, 20 Aug 2025 15:32:52 +0200 Subject: [PATCH 75/99] Release 128.14.0 --- .gitignore | 2 ++ icecat-lang_download.sh | 2 +- icecat.spec | 2 +- sources | 4 ++-- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 71763df..c460c02 100644 --- a/.gitignore +++ b/.gitignore @@ -284,3 +284,5 @@ /icecat-128.12.0-rh1.tar.bz2 /icecat-128.13.0-langpacks.tar.gz /icecat-128.13.0-rh1.tar.bz2 +/icecat-128.14.0-langpacks.tar.gz +/icecat-128.14.0-rh1.tar.bz2 diff --git a/icecat-lang_download.sh b/icecat-lang_download.sh index 2ef85df..539b540 100755 --- a/icecat-lang_download.sh +++ b/icecat-lang_download.sh @@ -1,6 +1,6 @@ #!/bin/bash -VERSION=128.13.0 +VERSION=128.14.0 URL=https://ftp.mozilla.org/pub/firefox/releases/${VERSION}esr/linux-x86_64/xpi/ for u in $URL; do diff --git a/icecat.spec b/icecat.spec index 188fba3..901524c 100644 --- a/icecat.spec +++ b/icecat.spec @@ -100,7 +100,7 @@ ExcludeArch: %{ix86} %{arm} Name: icecat Epoch: 3 -Version: 128.13.0 +Version: 128.14.0 Release: %autorelease -e %{redhat_ver} Summary: GNU version of Firefox browser diff --git a/sources b/sources index ccec311..509cd2e 100644 --- a/sources +++ b/sources @@ -1,5 +1,5 @@ SHA512 (cbindgen-vendor.tar.xz) = 6d354d65674395b8171f262ae9aa08f656fdd83b6d29d70bd1ad2f13c4a52db81df780cfdf6ac86e9d1f16426c9ab3cdc0160f0785a0909ad7525fd8a9bc3b25 -SHA512 (icecat-128.13.0-langpacks.tar.gz) = b0d4ac1f6014f23d587e9168689b292c29139794bf5c9f24ef0ab296add4d3198403eddfd7c8c67ae493ce533e1294b3e74e977e418a3455510f6219e2391d87 -SHA512 (icecat-128.13.0-rh1.tar.bz2) = f16c8a329db890be32f8024a5852667500d8a2a8a8cedcbbb9e473c7a65f8ef90002210388ccb84716463d10e5f56048abdf27fb479d669b489be502cf4cadcf +SHA512 (icecat-128.14.0-langpacks.tar.gz) = 1b7276be14eb378c216b1c7f8ea4594ed0a5c3e4c765d5d41f2c223ce48c061d68d6066b6dd4892b0460b4ab4d1d732d47c3b4cafe311e9fb87bca41e9d65e84 +SHA512 (icecat-128.14.0-rh1.tar.bz2) = a5c0da970d0320bb49c1eba82140fba8dd46cac2ca8d78078517ae3b917ec90496d2ac9e5e1ec5db903834156e28a508f1593b0147dec5e54d7357ce8ead1c44 SHA512 (icecat-COPYING-licensefiles.tar.gz) = ed541845170f1d209e322b0def3248d571e0c42c4a17c74e83197e743bd8a128a1475f5312d905c8e70d047eddeac17e604373892eb6d5f1720c5c361849c42c SHA512 (icecat.png) = a3cec16cb15a27c3c91b53e2c534e78b07911011ff1331e450c0baf8e13b76da7cea2a90e5d75191fa88cfbfd40a0a7f3e553e92b64d0043dadd5ad5edfdf81c From 35e9900c2f10ee1fec2d309cb0a039adec181af1 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Wed, 20 Aug 2025 18:11:26 +0200 Subject: [PATCH 76/99] Exclude -mtls-dialect=gnu2 on x86_64 --- icecat.spec | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/icecat.spec b/icecat.spec index 901524c..c62b233 100644 --- a/icecat.spec +++ b/icecat.spec @@ -536,6 +536,13 @@ MOZ_OPT_FLAGS=$(echo "$MOZ_OPT_FLAGS" | %{__sed} -e 's/-g/-g1/') export MOZ_DEBUG_FLAGS=" " %endif +# -mtls-dialect=gnu2 is not recognized by clang-17 +%if "%toolchain" == "clang" +%ifarch x86_64 +MOZ_OPT_FLAGS=$(echo "$MOZ_OPT_FLAGS" | %{__sed} -e 's/-mtls-dialect=gnu2//') +%endif +%endif + # We don't want firefox to use CK_GCM_PARAMS_V3 in nss MOZ_OPT_FLAGS="$MOZ_OPT_FLAGS -DNSS_PKCS11_3_0_STRICT" From 3e712e05b7e3ef8cae2290aeff403c71e02eda43 Mon Sep 17 00:00:00 2001 From: Dominik 'Rathann' Mierzejewski Date: Wed, 20 Aug 2025 22:50:53 +0200 Subject: [PATCH 77/99] Drop unused yasm build dependency See https://fedoraproject.org/wiki/Changes/DeprecateYASM . --- icecat.spec | 1 - 1 file changed, 1 deletion(-) diff --git a/icecat.spec b/icecat.spec index c62b233..73d8f0f 100644 --- a/icecat.spec +++ b/icecat.spec @@ -253,7 +253,6 @@ BuildRequires: pkgconfig(libcurl) %if %{with pulseaudio} BuildRequires: pulseaudio-libs-devel %endif -BuildRequires: yasm BuildRequires: llvm %if 0%{?fedora} >= 40 || 0%{?rhel} >= 10 BuildRequires: clang17 From 043fa72cdd11ca5a437d98686922e2dd8ca86a12 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Fri, 19 Sep 2025 22:29:00 +0200 Subject: [PATCH 78/99] Release 140.3.0 --- .gitignore | 2 + icecat-115.19.0-fix_mz1917964.patch | 392 ---------------------------- icecat-commasplit.patch | 76 ------ icecat-lang_download.sh | 2 +- icecat.spec | 40 +-- mozilla-1196777.patch | 14 - rhbz-1173156.patch | 12 - sources | 6 +- 8 files changed, 16 insertions(+), 528 deletions(-) delete mode 100644 icecat-115.19.0-fix_mz1917964.patch delete mode 100644 icecat-commasplit.patch delete mode 100644 mozilla-1196777.patch delete mode 100644 rhbz-1173156.patch diff --git a/.gitignore b/.gitignore index c460c02..5e6f785 100644 --- a/.gitignore +++ b/.gitignore @@ -286,3 +286,5 @@ /icecat-128.13.0-rh1.tar.bz2 /icecat-128.14.0-langpacks.tar.gz /icecat-128.14.0-rh1.tar.bz2 +/icecat-140.3.0-langpacks.tar.gz +/icecat-140.3.0-rh1.tar.bz2 diff --git a/icecat-115.19.0-fix_mz1917964.patch b/icecat-115.19.0-fix_mz1917964.patch deleted file mode 100644 index 89fc16a..0000000 --- a/icecat-115.19.0-fix_mz1917964.patch +++ /dev/null @@ -1,392 +0,0 @@ - -# HG changeset patch -# User Sam James -# Date 1726081531 0 -# Node ID 0249085453e0d5c8378a1a053b94753fd52c956c -# Parent 3fca72d15659808d8f453b44a13320d4f6ceca86 -Bug 1917964 - Fix swgl build with GCC 15. r=gfx-reviewers,lsalzman - -Fix broken specialisations which are exposed by a recent change in GCC trunk. - -See https://gcc.gnu.org/PR116666. - -Differential Revision: https://phabricator.services.mozilla.com/D221744 - -diff --git a/gfx/wr/swgl/src/vector_type.h b/gfx/wr/swgl/src/vector_type.h ---- a/gfx/wr/swgl/src/vector_type.h -+++ b/gfx/wr/swgl/src/vector_type.h -@@ -235,33 +235,33 @@ struct VectorType { - data /= x.data; - return *this; - } - VectorType& operator%=(int x) { - data %= x; - return *this; - } - -- VectorType operator==(VectorType x) const { -- return VectorType::wrap(data == x.data); -+ VectorType operator==(VectorType x) const { -+ return VectorType::wrap(data == x.data); - } -- VectorType operator!=(VectorType x) const { -- return VectorType::wrap(data != x.data); -+ VectorType operator!=(VectorType x) const { -+ return VectorType::wrap(data != x.data); - } -- VectorType operator<(VectorType x) const { -- return VectorType::wrap(data < x.data); -+ VectorType operator<(VectorType x) const { -+ return VectorType::wrap(data < x.data); - } -- VectorType operator>(VectorType x) const { -- return VectorType::wrap(data > x.data); -+ VectorType operator>(VectorType x) const { -+ return VectorType::wrap(data > x.data); - } -- VectorType operator<=(VectorType x) const { -- return VectorType::wrap(data <= x.data); -+ VectorType operator<=(VectorType x) const { -+ return VectorType::wrap(data <= x.data); - } -- VectorType operator>=(VectorType x) const { -- return VectorType::wrap(data >= x.data); -+ VectorType operator>=(VectorType x) const { -+ return VectorType::wrap(data >= x.data); - } - - VectorType operator!() const { return wrap(!data); } - VectorType operator&&(VectorType x) const { return wrap(data & x.data); } - VectorType operator||(VectorType x) const { return wrap(data | x.data); } - - VectorType& operator=(VectorType x) { - data = x.data; - - -# HG changeset patch -# User Lee Salzman -# Date 1726239330 0 -# Node ID d36ca9941b2f90d910854e38293875e32c49796b -# Parent 156543617de576c07a7914dd20d13692ddb0845a -Bug 1917964 - Use __builtin_convertvector and __builtin_shufflevector on GCC when available. r=aosmond - -GCC upstream recommends we use __builtin_convertvector and __builtin_shufflevector instead of __builtin_shuffle -for better code generation. - -See: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116666#c7 - -Differential Revision: https://phabricator.services.mozilla.com/D222067 - -diff --git a/gfx/wr/swgl/src/vector_type.h b/gfx/wr/swgl/src/vector_type.h ---- a/gfx/wr/swgl/src/vector_type.h -+++ b/gfx/wr/swgl/src/vector_type.h -@@ -89,16 +89,25 @@ template <> - struct VectorMask { - typedef int8_t type; - }; - template <> - struct VectorMask { - typedef int type; - }; - -+# ifdef __has_builtin -+# if __has_builtin(__builtin_convertvector) -+# define HAS_BUILTIN_CONVERTVECTOR -+# endif -+# if __has_builtin(__builtin_shufflevector) -+# define HAS_BUILTIN_SHUFFLEVECTOR -+# endif -+# endif -+ - template - struct VectorType { - enum { SIZE = N }; - - typedef T data_type __attribute__((vector_size(sizeof(T) * N))); - typedef typename VectorMask::type mask_index; - typedef mask_index mask_type - __attribute__((vector_size(sizeof(mask_index) * N))); -@@ -131,16 +140,23 @@ struct VectorType { - VectorType v; - v.data = data; - return v; - } - - T& operator[](size_t i) { return elements[i]; } - T operator[](size_t i) const { return elements[i]; } - -+# ifdef HAS_BUILTIN_CONVERTVECTOR -+ template -+ operator VectorType() const { -+ return VectorType::wrap( -+ __builtin_convertvector(data, typename VectorType::data_type)); -+ } -+# else - template - operator VectorType() const { - return VectorType::wrap( - (typename VectorType::data_type){U(x), U(y)}); - } - template - operator VectorType() const { - return VectorType::wrap( -@@ -168,16 +184,17 @@ struct VectorType { - U(elements[10]), - U(elements[11]), - U(elements[12]), - U(elements[13]), - U(elements[14]), - U(elements[15]), - }); - } -+# endif - - VectorType operator-() const { return wrap(-data); } - VectorType operator~() const { return wrap(~data); } - - VectorType operator&(VectorType x) const { return wrap(data & x.data); } - VectorType operator&(T x) const { return wrap(data & x); } - VectorType operator|(VectorType x) const { return wrap(data | x.data); } - VectorType operator|(T x) const { return wrap(data | x); } -@@ -263,110 +280,107 @@ struct VectorType { - VectorType operator&&(VectorType x) const { return wrap(data & x.data); } - VectorType operator||(VectorType x) const { return wrap(data | x.data); } - - VectorType& operator=(VectorType x) { - data = x.data; - return *this; - } - -- VectorType shuffle(VectorType b, mask_index x, mask_index y, -- mask_index z, mask_index w) const { -- return VectorType::wrap(__builtin_shuffle( -- data, b.data, (typename VectorType::mask_type){x, y, z, w})); -- } -- VectorType shuffle(VectorType b, mask_index x, mask_index y, -- mask_index z, mask_index w, mask_index s, -- mask_index t, mask_index u, mask_index v) const { -- return VectorType::wrap(__builtin_shuffle( -- data, b.data, -- (typename VectorType::mask_type){x, y, z, w, s, t, u, v})); -- } -- VectorType shuffle(VectorType b, mask_index x, mask_index y, -- mask_index z, mask_index w, mask_index s, -- mask_index t, mask_index u, mask_index v, -- mask_index i, mask_index j, mask_index k, -- mask_index l, mask_index m, mask_index n, -- mask_index o, mask_index p) const { -- return VectorType::wrap( -- __builtin_shuffle(data, b.data, -- (typename VectorType::mask_type){ -- x, y, z, w, s, t, u, v, i, j, k, l, m, n, o, p})); -- } -- -- VectorType swizzle(mask_index x, mask_index y, mask_index z, -- mask_index w) const { -- return VectorType::wrap(__builtin_shuffle( -- data, (typename VectorType::mask_type){x, y, z, w})); -- } -- VectorType swizzle(mask_index x, mask_index y, mask_index z, -- mask_index w, mask_index s, mask_index t, -- mask_index u, mask_index v) const { -- return VectorType::wrap(__builtin_shuffle( -- data, (typename VectorType::mask_type){x, y, z, w, s, t, u, v})); -- } -- - SI VectorType wrap(half_type low, half_type high) { - VectorType v; - v.low_half = low; - v.high_half = high; - return v; - } - - VectorType combine(VectorType high) const { - return VectorType::wrap(data, high.data); - } - --# define xxxx swizzle(0, 0, 0, 0) --# define yyyy swizzle(1, 1, 1, 1) --# define zzzz swizzle(2, 2, 2, 2) --# define wwww swizzle(3, 3, 3, 3) --# define xxyy swizzle(0, 0, 1, 1) --# define xxzz swizzle(0, 0, 2, 2) --# define yyww swizzle(1, 1, 3, 3) --# define zzww swizzle(2, 2, 3, 3) --# define xyxy swizzle(0, 1, 0, 1) --# define xzxz swizzle(0, 2, 0, 2) --# define ywyw swizzle(1, 3, 1, 3) --# define zwzw swizzle(2, 3, 2, 3) --# define zwxy swizzle(2, 3, 0, 1) --# define zyxw swizzle(2, 1, 0, 3) --# define xxyz swizzle(0, 0, 1, 2) --# define xyyz swizzle(0, 1, 1, 2) --# define xyzz swizzle(0, 1, 2, 2) --# define xzyw swizzle(0, 2, 1, 3) --# define yzwx swizzle(1, 2, 3, 0) --# define wxyz swizzle(3, 0, 1, 2) --# define wzyx swizzle(3, 2, 1, 0) --# define xxxxyyyy XXXXYYYY() -- VectorType XXXXYYYY() const { -- return swizzle(0, 0, 0, 0).combine(swizzle(1, 1, 1, 1)); -+# ifdef HAS_BUILTIN_SHUFFLEVECTOR -+ template -+ VectorType shuffle(VectorType b) const { -+ return VectorType::wrap( -+ __builtin_shufflevector(data, b.data, INDEXES...)); -+ } -+ -+ template -+ VectorType swizzle() const { -+ return VectorType::wrap( -+ __builtin_shufflevector(data, data, INDEXES...)); -+ } -+# else -+ template -+ VectorType shuffle(VectorType b) const { -+ return VectorType::wrap(__builtin_shuffle( -+ data, b.data, (typename VectorType::mask_type){INDEXES...})); -+ } -+ -+ template -+ VectorType shuffle(VectorType b) const { -+ return shuffle(b).combine(shuffle(b)); -+ } -+ -+ template -+ VectorType shuffle(VectorType b) const { -+ return shuffle(b).combine( -+ shuffle(b)); - } --# define zzzzwwww ZZZZWWWW() -- VectorType ZZZZWWWW() const { -- return swizzle(2, 2, 2, 2).combine(swizzle(3, 3, 3, 3)); -+ -+ template -+ VectorType shuffle(VectorType b) const { -+ return shuffle(b).combine( -+ shuffle(b)); - } --# define xyzwxyzw XYZWXYZW() -- VectorType XYZWXYZW() const { return combine(*this); } --# define xyxyxyxy XYXYXYXY() -- VectorType XYXYXYXY() const { -- return swizzle(0, 1, 0, 1).combine(swizzle(0, 1, 0, 1)); -+ -+ template -+ VectorType swizzle() const { -+ return shuffle(*this); - } --# define zwzwzwzw ZWZWZWZW() -- VectorType ZWZWZWZW() const { -- return swizzle(2, 3, 2, 3).combine(swizzle(2, 3, 2, 3)); -- } --# define xxyyzzww XXYYZZWW() -- VectorType XXYYZZWW() const { -- return swizzle(0, 0, 1, 1).combine(swizzle(2, 2, 3, 3)); -- } --# define xxxxyyyyzzzzwwww XXXXYYYYZZZZWWWW() -- VectorType XXXXYYYYZZZZWWWW() { -- return XXXXYYYY().combine(ZZZZWWWW()); -- } -+# endif -+ -+# define SWIZZLE(...) template swizzle<__VA_ARGS__>() -+ -+# define xxxx SWIZZLE(0, 0, 0, 0) -+# define yyyy SWIZZLE(1, 1, 1, 1) -+# define zzzz SWIZZLE(2, 2, 2, 2) -+# define wwww SWIZZLE(3, 3, 3, 3) -+# define xxyy SWIZZLE(0, 0, 1, 1) -+# define xxzz SWIZZLE(0, 0, 2, 2) -+# define yyww SWIZZLE(1, 1, 3, 3) -+# define zzww SWIZZLE(2, 2, 3, 3) -+# define xyxy SWIZZLE(0, 1, 0, 1) -+# define xzxz SWIZZLE(0, 2, 0, 2) -+# define ywyw SWIZZLE(1, 3, 1, 3) -+# define zwzw SWIZZLE(2, 3, 2, 3) -+# define zwxy SWIZZLE(2, 3, 0, 1) -+# define zyxw SWIZZLE(2, 1, 0, 3) -+# define xxyz SWIZZLE(0, 0, 1, 2) -+# define xyyz SWIZZLE(0, 1, 1, 2) -+# define xyzz SWIZZLE(0, 1, 2, 2) -+# define xzyw SWIZZLE(0, 2, 1, 3) -+# define yzwx SWIZZLE(1, 2, 3, 0) -+# define wxyz SWIZZLE(3, 0, 1, 2) -+# define wzyx SWIZZLE(3, 2, 1, 0) -+# define xxxxyyyy SWIZZLE(0, 0, 0, 0, 1, 1, 1, 1) -+# define zzzzwwww SWIZZLE(2, 2, 2, 2, 3, 3, 3, 3) -+# define xyzwxyzw SWIZZLE(0, 1, 2, 3, 0, 1, 2, 3) -+# define xyxyxyxy SWIZZLE(0, 1, 0, 1, 0, 1, 0, 1) -+# define zwzwzwzw SWIZZLE(2, 3, 2, 3, 2, 3, 2, 3) -+# define xxyyzzww SWIZZLE(0, 0, 1, 1, 2, 2, 3, 3) -+# define xxxxyyyyzzzzwwww \ -+ SWIZZLE(0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3) - }; - - template - struct VectorType { - typedef T data_type __attribute__((vector_size(sizeof(T) * 2))); - union { - data_type data; - struct { -@@ -383,17 +397,17 @@ struct VectorType { - - VectorType operator&(VectorType x) const { return wrap(data & x.data); } - VectorType operator&(T x) const { return wrap(data & x); } - VectorType operator|(VectorType x) const { return wrap(data | x.data); } - VectorType operator|(T x) const { return wrap(data | x); } - }; - - # define CONVERT(vector, type) ((type)(vector)) --# define SHUFFLE(a, b, ...) a.shuffle(b, __VA_ARGS__) -+# define SHUFFLE(a, b, ...) ((a).template shuffle<__VA_ARGS__>(b)) - - template - SI VectorType combine(VectorType a, VectorType b) { - return VectorType::wrap(a.data, b.data); - } - - template - SI VectorType lowHalf(VectorType a) { -@@ -473,32 +487,25 @@ SI VectorType zip2Low(VectorType - SI VectorType zip2High(VectorType a, VectorType b) { - return SHUFFLE(a, b, 4, 5, 12, 13, 6, 7, 14, 15); - } - --#ifdef __clang__ - template - SI VectorType zip(VectorType a, VectorType b) { - return SHUFFLE(a, b, 0, 4, 1, 5, 2, 6, 3, 7); - } - - template - SI VectorType zip(VectorType a, VectorType b) { - return SHUFFLE(a, b, 0, 8, 1, 9, 2, 10, 3, 11, 4, 12, 5, 13, 6, 14, 7, 15); - } --#else --template --SI VectorType zip(VectorType a, VectorType b) { -- return combine(zipLow(a, b), zipHigh(a, b)); --} --#endif - - template - struct Unaligned { - template - SI T load(const P* p) { - T v; - memcpy(&v, p, sizeof(v)); - return v; - - diff --git a/icecat-commasplit.patch b/icecat-commasplit.patch deleted file mode 100644 index a56aec4..0000000 --- a/icecat-commasplit.patch +++ /dev/null @@ -1,76 +0,0 @@ ---- firefox-111.0.1/build/moz.configure/rust.configure 2023-03-21 06:16:03.000000000 -0700 -+++ firefox-111.0.1/build/moz.configure/rust.configure.new 2023-04-05 08:57:29.403219120 -0700 -@@ -593,7 +593,7 @@ - - # ============================================================== - --option(env="RUSTFLAGS", nargs=1, help="Rust compiler flags") -+option(env="RUSTFLAGS", nargs=1, help="Rust compiler flags", comma_split=False) - set_config("RUSTFLAGS", depends("RUSTFLAGS")(lambda flags: flags)) - - ---- firefox-111.0.1/python/mozbuild/mozbuild/configure/options.py 2023-03-21 06:16:09.000000000 -0700 -+++ firefox-111.0.1/python/mozbuild/mozbuild/configure/options.py.new 2023-04-05 08:57:31.270193468 -0700 -@@ -191,6 +191,10 @@ - to instantiate an option indirectly. Set this to a positive integer to - force the script to look into a deeper stack frame when inferring the - `category`. -+ - `comma_split` specifies whether the value string should be split on -+ commas. The default is True. Setting it False is necessary for things -+ like compiler flags which should be a single string that may contain -+ commas. - """ - - __slots__ = ( -@@ -205,6 +209,7 @@ - "possible_origins", - "category", - "define_depth", -+ "comma_split", - ) - - def __init__( -@@ -218,6 +223,7 @@ - category=None, - help=None, - define_depth=0, -+ comma_split=True, - ): - if not name and not env: - raise InvalidOptionError( -@@ -335,9 +341,10 @@ - self.choices = choices - self.help = help - self.category = category or _infer_option_category(define_depth) -+ self.comma_split = comma_split - - @staticmethod -- def split_option(option): -+ def split_option(option, comma_split=True): - """Split a flag or variable into a prefix, a name and values - - Variables come in the form NAME=values (no prefix). -@@ -350,7 +357,13 @@ - - elements = option.split("=", 1) - name = elements[0] -- values = tuple(elements[1].split(",")) if len(elements) == 2 else () -+ if len(elements) == 2: -+ if comma_split: -+ values = tuple(elements[1].split(",")) -+ else: -+ values = (elements[1],) -+ else: -+ values = () - if name.startswith("--"): - name = name[2:] - if not name.islower(): -@@ -426,7 +439,7 @@ - % (option, origin, ", ".join(self.possible_origins)) - ) - -- prefix, name, values = self.split_option(option) -+ prefix, name, values = self.split_option(option, self.comma_split) - option = self._join_option(prefix, name) - - assert name in (self.name, self.env) diff --git a/icecat-lang_download.sh b/icecat-lang_download.sh index 539b540..5444252 100755 --- a/icecat-lang_download.sh +++ b/icecat-lang_download.sh @@ -1,6 +1,6 @@ #!/bin/bash -VERSION=128.14.0 +VERSION=140.3.0 URL=https://ftp.mozilla.org/pub/firefox/releases/${VERSION}esr/linux-x86_64/xpi/ for u in $URL; do diff --git a/icecat.spec b/icecat.spec index 73d8f0f..2254983 100644 --- a/icecat.spec +++ b/icecat.spec @@ -99,8 +99,8 @@ ExcludeArch: %{ix86} %{arm} %global __requires_exclude ^(%%(find %{buildroot}%{icecatappdir} -name '*.so' | xargs -n1 basename | sort -u | paste -s -d '|' -)) Name: icecat -Epoch: 3 -Version: 128.14.0 +Epoch: 4 +Version: 140.3.0 Release: %autorelease -e %{redhat_ver} Summary: GNU version of Firefox browser @@ -109,7 +109,7 @@ License: (MPL-1.1 OR GPL-2.0-or-later OR LGPL-2.1-or-later) AND GPL-3.0-or-later URL: http://www.gnu.org/software/gnuzilla/ ## Source archive created by scripts based on Gnuzilla files. -## Modified files are hosted in a dedicated fork repository: +## All modified files are hosted in a dedicated fork repository: ## https://gitlab.com/anto.trande/icecat Source0: %{name}-%{version}-%{redhat_ver}.tar.bz2 @@ -140,10 +140,6 @@ Source18: node-stdout-nonblocking-wrapper Source19: run-wayland-compositor -# Build patches -# Fixes installation of those addons which don't have ID on IceCat ("Cannot find id for addon" error). -Patch2: %{name}-commasplit.patch - # With clang LLVM 16 rust-bindgen 0.56.0 is too old, combined # https://github.com/rust-lang/rust-bindgen/pull/2319 # https://github.com/rust-lang/rust-bindgen/pull/2339 @@ -157,7 +153,6 @@ Patch40: build-aarch64-skia.patch Patch44: build-arm-libopus.patch # Fedora specific patches -Patch219: rhbz-1173156.patch Patch220: firefox-nss-version.patch Patch221: firefox-nss-addon-hack.patch Patch223: %{name}-glibc-dynstack.patch @@ -168,13 +163,10 @@ Patch226: rhbz-1354671.patch # Upstream patches Patch401: icecat-1742849.patch -Patch402: mozilla-1196777.patch Patch403: icecat-python3.11-open-U.patch Patch404: icecat-python3.11-regex-inline-flags.patch Patch412: mozilla-1337988.patch Patch422: mozilla-1580174-webrtc-popup.patch -# Patch for GCC-15 -Patch426: icecat-115.19.0-fix_mz1917964.patch # Fix crash on ppc64le (mozilla#1512162) Patch423: mozilla-1512162.patch @@ -255,10 +247,10 @@ BuildRequires: pulseaudio-libs-devel %endif BuildRequires: llvm %if 0%{?fedora} >= 40 || 0%{?rhel} >= 10 -BuildRequires: clang17 -BuildRequires: clang17-libs -BuildRequires: llvm17-devel -%global llvm_suffix -17 +BuildRequires: clang +BuildRequires: clang-libs +BuildRequires: llvm-devel +%global llvm_suffix -20 %else BuildRequires: clang BuildRequires: clang-libs @@ -301,11 +293,6 @@ Requires: fedora-bookmarks Suggests: mozilla-ublock-origin Provides: webclient -%if 0%{?fedora} >= 40 -Obsoletes: icecat-wayland < 3:128.12.0-1 -Obsoletes: icecat-x11 < 3:128.12.0-1 -%endif - %description GNU IceCat is the GNU version of the Firefox ESR browser. Extensions included to this version of IceCat: @@ -334,7 +321,7 @@ Extensions included to this version of IceCat: %if %{with langpacks_subpkg} %package langpacks Summary: IceCat langpacks -Requires: %{name} = 3:%{version}-%{release} +Requires: %{name} = 4:%{version}-%{release} %description langpacks The icecat-langpacks package contains all the localization and translations langpack add-ons. @@ -348,10 +335,7 @@ and translations langpack add-ons. # Copy license files tar -xf %{SOURCE5} -%patch -P 2 -p 1 -b .commasplit - # Fedora patches -%patch -P 219 -p 1 -b .rhbz-1173156 %if 0%{?fedora} %patch -P 221 -p 1 -b .firefox-nss-addon-hack %endif @@ -359,15 +343,12 @@ tar -xf %{SOURCE5} # ARM64 %ifarch %{arm64} -%patch -P 40 -p 1 -b .aarch64-skia %patch -P 226 -p 1 -b .1354671 %endif -%patch -P 402 -p 1 -b .1196777 %ifarch %{power64} %patch -P 423 -p 1 -b .1512162 %endif -%patch -P 426 -p 1 -b .1917964 %patch -P 603 -p1 -b .inline # Remove default configuration and copy the customized one @@ -451,7 +432,6 @@ echo "ac_add_options --with-l10n-base=$PWD/l10n" >> .mozconfig %if "%toolchain" == "clang" echo "ac_add_options --with-libclang-path=`llvm-config%{?llvm_suffix} --libdir`" >> .mozconfig -#echo "ac_add_options --with-clang-path=%%{_bindir}/clang%%{?llvm_suffix}" >> .mozconfig %endif %ifarch s390x %{arm64} @@ -535,10 +515,10 @@ MOZ_OPT_FLAGS=$(echo "$MOZ_OPT_FLAGS" | %{__sed} -e 's/-g/-g1/') export MOZ_DEBUG_FLAGS=" " %endif -# -mtls-dialect=gnu2 is not recognized by clang-17 +# -mtls-dialect=gnu2 is not recognized by clang-20 %if "%toolchain" == "clang" %ifarch x86_64 -MOZ_OPT_FLAGS=$(echo "$MOZ_OPT_FLAGS" | %{__sed} -e 's/-mtls-dialect=gnu2//') +#MOZ_OPT_FLAGS=$(echo "$MOZ_OPT_FLAGS" | %%{__sed} -e 's/-mtls-dialect=gnu2//') %endif %endif diff --git a/mozilla-1196777.patch b/mozilla-1196777.patch deleted file mode 100644 index 3cc90e4..0000000 --- a/mozilla-1196777.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -up firefox-100.0/widget/gtk/nsWindow.cpp.1196777 firefox-100.0/widget/gtk/nsWindow.cpp ---- firefox-100.0/widget/gtk/nsWindow.cpp.1196777 2022-05-02 11:29:06.763325015 +0200 -+++ firefox-100.0/widget/gtk/nsWindow.cpp 2022-05-02 11:30:49.100717334 +0200 -@@ -163,7 +163,8 @@ const gint kEvents = GDK_TOUCHPAD_GESTUR - GDK_ENTER_NOTIFY_MASK | GDK_LEAVE_NOTIFY_MASK | - GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | - GDK_SMOOTH_SCROLL_MASK | GDK_TOUCH_MASK | GDK_SCROLL_MASK | -- GDK_POINTER_MOTION_MASK | GDK_PROPERTY_CHANGE_MASK; -+ GDK_POINTER_MOTION_MASK | GDK_PROPERTY_CHANGE_MASK | -+ GDK_FOCUS_CHANGE_MASK; - - /* utility functions */ - static bool is_mouse_in_window(GdkWindow* aWindow, gdouble aMouseX, - diff --git a/rhbz-1173156.patch b/rhbz-1173156.patch deleted file mode 100644 index 9750861..0000000 --- a/rhbz-1173156.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up a/extensions/auth/nsAuthSambaNTLM.cpp.old b/extensions/auth/nsAuthSambaNTLM.cpp ---- a/extensions/auth/nsAuthSambaNTLM.cpp.old 2014-11-25 12:23:22.000000000 +0100 -+++ b/extensions/auth/nsAuthSambaNTLM.cpp 2014-12-23 15:26:36.606674625 +0100 -@@ -161,7 +161,7 @@ - const char* username = PR_GetEnv("USER"); - if (!username) return NS_ERROR_FAILURE; - -- const char* const args[] = {"ntlm_auth", -+ const char* const args[] = {"/usr/bin/ntlm_auth", - "--helper-protocol", - "ntlmssp-client-1", - "--use-cached-creds", diff --git a/sources b/sources index 509cd2e..fe5892b 100644 --- a/sources +++ b/sources @@ -1,5 +1,5 @@ -SHA512 (cbindgen-vendor.tar.xz) = 6d354d65674395b8171f262ae9aa08f656fdd83b6d29d70bd1ad2f13c4a52db81df780cfdf6ac86e9d1f16426c9ab3cdc0160f0785a0909ad7525fd8a9bc3b25 -SHA512 (icecat-128.14.0-langpacks.tar.gz) = 1b7276be14eb378c216b1c7f8ea4594ed0a5c3e4c765d5d41f2c223ce48c061d68d6066b6dd4892b0460b4ab4d1d732d47c3b4cafe311e9fb87bca41e9d65e84 -SHA512 (icecat-128.14.0-rh1.tar.bz2) = a5c0da970d0320bb49c1eba82140fba8dd46cac2ca8d78078517ae3b917ec90496d2ac9e5e1ec5db903834156e28a508f1593b0147dec5e54d7357ce8ead1c44 +SHA512 (cbindgen-vendor.tar.xz) = 31f55007d57ae62905c9b1efec89e86a9aa949ffe9983c6fa437cbe98e64b99c96cfecbdebe961e04310ea8a5600df703be5aa7f774e123575212eefe35cd595 +SHA512 (icecat-140.3.0-langpacks.tar.gz) = ee1f36e6adf38a98e6ac48f9db5603860cfc5e0a610b98fba7683d70c26474f64f78951df8dc2434362d46e297143f17791ca42180a85ce99d1ab96cf17ebdcf +SHA512 (icecat-140.3.0-rh1.tar.bz2) = 4580dc49248292b8d1e3e9daea3feccf9042aa9184465e9ca40cfeeb1f63745dfa5b0dc32dd47a4b5a5eee66a28eb19e2d5c8e98f7d61c433bf1eb7e05cf1f31 SHA512 (icecat-COPYING-licensefiles.tar.gz) = ed541845170f1d209e322b0def3248d571e0c42c4a17c74e83197e743bd8a128a1475f5312d905c8e70d047eddeac17e604373892eb6d5f1720c5c361849c42c SHA512 (icecat.png) = a3cec16cb15a27c3c91b53e2c534e78b07911011ff1331e450c0baf8e13b76da7cea2a90e5d75191fa88cfbfd40a0a7f3e553e92b64d0043dadd5ad5edfdf81c From 6d1f9dcda7a126907521e3db4ee60923b0b59398 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Sat, 20 Sep 2025 12:47:24 +0200 Subject: [PATCH 79/99] Reload and use bundled cbindgen --- icecat.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/icecat.spec b/icecat.spec index 2254983..2864e7d 100644 --- a/icecat.spec +++ b/icecat.spec @@ -9,7 +9,7 @@ ExcludeArch: %{ix86} %{arm} # Bundled cbindgen makes build slow. # Enable only if system cbindgen is not available. -%global use_bundled_cbindgen 0 +%global use_bundled_cbindgen 1 #################### From c66c28f8d66633c5790360f2c86406cdaa8b1cd0 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Sat, 20 Sep 2025 12:51:27 +0200 Subject: [PATCH 80/99] Upload bundled cbindgen --- sources | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sources b/sources index fe5892b..037d664 100644 --- a/sources +++ b/sources @@ -1,4 +1,4 @@ -SHA512 (cbindgen-vendor.tar.xz) = 31f55007d57ae62905c9b1efec89e86a9aa949ffe9983c6fa437cbe98e64b99c96cfecbdebe961e04310ea8a5600df703be5aa7f774e123575212eefe35cd595 +SHA512 (cbindgen-vendor.tar.xz) = 647dcadf3507bd05262613d03ff18a8c876bcbb4e83ce59f911128ae020ac16695298987c6c14f8b7a7aee5bb096740c6885c0a854d8b26431fc9a8ff864c369 SHA512 (icecat-140.3.0-langpacks.tar.gz) = ee1f36e6adf38a98e6ac48f9db5603860cfc5e0a610b98fba7683d70c26474f64f78951df8dc2434362d46e297143f17791ca42180a85ce99d1ab96cf17ebdcf SHA512 (icecat-140.3.0-rh1.tar.bz2) = 4580dc49248292b8d1e3e9daea3feccf9042aa9184465e9ca40cfeeb1f63745dfa5b0dc32dd47a4b5a5eee66a28eb19e2d5c8e98f7d61c433bf1eb7e05cf1f31 SHA512 (icecat-COPYING-licensefiles.tar.gz) = ed541845170f1d209e322b0def3248d571e0c42c4a17c74e83197e743bd8a128a1475f5312d905c8e70d047eddeac17e604373892eb6d5f1720c5c361849c42c From 31e9323f9e4a751385d523bad62f0f4b4c8ba69d Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Sat, 20 Sep 2025 16:02:19 +0200 Subject: [PATCH 81/99] Remove old patches| Remove --frozen Cargo flag --- build-aarch64-skia.patch | 36 -- build-arm-libopus.patch | 12 - firefox-nss-version.patch | 12 - icecat-140.3.0-remove_frozen_cargo_flag.patch | 11 + icecat-1742849.patch | 425 --------------- icecat-glibc-dynstack.patch | 62 --- icecat-python3.11-open-U.patch | 93 ---- icecat-python3.11-regex-inline-flags.patch | 27 - icecat.spec | 25 +- mozilla-1337988.patch | 496 ------------------ mozilla-1580174-webrtc-popup.patch | 51 -- ...652d38e007e736bb442ccd5aa5ed699db100.patch | 25 - rust-bindgen-2319-2339.patch | 154 ------ 13 files changed, 15 insertions(+), 1414 deletions(-) delete mode 100644 build-aarch64-skia.patch delete mode 100644 build-arm-libopus.patch delete mode 100644 firefox-nss-version.patch create mode 100644 icecat-140.3.0-remove_frozen_cargo_flag.patch delete mode 100644 icecat-1742849.patch delete mode 100644 icecat-glibc-dynstack.patch delete mode 100644 icecat-python3.11-open-U.patch delete mode 100644 icecat-python3.11-regex-inline-flags.patch delete mode 100644 mozilla-1337988.patch delete mode 100644 mozilla-1580174-webrtc-popup.patch delete mode 100644 mp4parse-rust-8b5b652d38e007e736bb442ccd5aa5ed699db100.patch delete mode 100644 rust-bindgen-2319-2339.patch diff --git a/build-aarch64-skia.patch b/build-aarch64-skia.patch deleted file mode 100644 index c6a9be6..0000000 --- a/build-aarch64-skia.patch +++ /dev/null @@ -1,36 +0,0 @@ -diff -up firefox-128.0/gfx/skia/skia/modules/skcms/src/Transform_inl.h.aarch64-skia firefox-128.0/gfx/skia/skia/modules/skcms/src/Transform_inl.h ---- firefox-128.0/gfx/skia/skia/modules/skcms/src/Transform_inl.h.aarch64-skia 2024-07-02 11:10:25.047099913 +0200 -+++ firefox-128.0/gfx/skia/skia/modules/skcms/src/Transform_inl.h 2024-07-02 11:15:43.855410571 +0200 -@@ -151,7 +151,7 @@ SI U32 to_fixed(F f) { return (U32)cast - - - SI F F_from_Half(U16 half) { --#if defined(USING_NEON_F16C) -+#if 0 // defined(USING_NEON_F16C) - return vcvt_f32_f16((float16x4_t)half); - #elif defined(USING_AVX512F) - return (F)_mm512_cvtph_ps((__m256i)half); -@@ -178,7 +178,7 @@ SI F F_from_Half(U16 half) { - __attribute__((no_sanitize("unsigned-integer-overflow"))) - #endif - SI U16 Half_from_F(F f) { --#if defined(USING_NEON_F16C) -+#if 0 //defined(USING_NEON_F16C) - return (U16)vcvt_f16_f32(f); - #elif defined(USING_AVX512F) - return (U16)_mm512_cvtps_ph((__m512 )f, _MM_FROUND_CUR_DIRECTION ); -diff -up firefox-128.0/gfx/skia/skia/src/opts/SkRasterPipeline_opts.h.aarch64-skia firefox-128.0/gfx/skia/skia/src/opts/SkRasterPipeline_opts.h ---- firefox-128.0/gfx/skia/skia/src/opts/SkRasterPipeline_opts.h.aarch64-skia 2024-07-02 11:10:25.048099949 +0200 -+++ firefox-128.0/gfx/skia/skia/src/opts/SkRasterPipeline_opts.h 2024-07-02 11:13:33.384783413 +0200 -@@ -1425,8 +1425,8 @@ SI F from_half(U16 h) { - } - - SI U16 to_half(F f) { --#if defined(JUMPER_IS_NEON) && defined(SK_CPU_ARM64) -- return (U16)vcvt_f16_f32(f); -+#if 0 //defined(JUMPER_IS_NEON) && defined(SK_CPU_ARM64) -+ return (U16)vcvt_f16_f32(f); - - #elif defined(JUMPER_IS_SKX) - return (U16)_mm512_cvtps_ph(f, _MM_FROUND_CUR_DIRECTION); - diff --git a/build-arm-libopus.patch b/build-arm-libopus.patch deleted file mode 100644 index 1b3f31b..0000000 --- a/build-arm-libopus.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up firefox-66.0/media/libopus/silk/arm/arm_silk_map.c.old firefox-66.0/media/libopus/silk/arm/arm_silk_map.c ---- firefox-66.0/media/libopus/silk/arm/arm_silk_map.c.old 2019-03-12 21:07:35.356677522 +0100 -+++ firefox-66.0/media/libopus/silk/arm/arm_silk_map.c 2019-03-12 21:07:42.937693394 +0100 -@@ -28,7 +28,7 @@ POSSIBILITY OF SUCH DAMAGE. - # include "config.h" - #endif - --#include "main_FIX.h" -+#include "fixed/main_FIX.h" - #include "NSQ.h" - #include "SigProc_FIX.h" - diff --git a/firefox-nss-version.patch b/firefox-nss-version.patch deleted file mode 100644 index fee93bb..0000000 --- a/firefox-nss-version.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up firefox-78.0/toolkit/moz.configure.nss-version firefox-78.0/toolkit/moz.configure ---- firefox-78.0/toolkit/moz.configure.nss-version 2020-06-30 08:47:09.657501414 +0200 -+++ firefox-78.0/toolkit/moz.configure 2020-06-30 08:47:12.652510169 +0200 -@@ -2089,7 +2089,7 @@ option('--with-system-nss', help='Use sy - - imply_option('--with-system-nspr', True, when='--with-system-nss') - --nss_pkg = pkg_check_modules('NSS', 'nss >= 3.53.1', when='--with-system-nss', config=False) -+nss_pkg = pkg_check_modules('NSS', 'nss >= 3.53.0', when='--with-system-nss', config=False) - - set_config('MOZ_SYSTEM_NSS', True, when='--with-system-nss') - diff --git a/icecat-140.3.0-remove_frozen_cargo_flag.patch b/icecat-140.3.0-remove_frozen_cargo_flag.patch new file mode 100644 index 0000000..5ba729e --- /dev/null +++ b/icecat-140.3.0-remove_frozen_cargo_flag.patch @@ -0,0 +1,11 @@ +--- a/build/RunCbindgen.orig.py 2025-09-19 17:30:54.000000000 +0200 ++++ b/build/RunCbindgen.py 2025-09-20 15:53:53.173474575 +0200 +@@ -54,8 +54,6 @@ + # tree, so we want to let Cargo create lock files in this case. When built + # within a tree, the Rust dependencies have been vendored in so Cargo won't + # touch the lock file. +- if not buildconfig.substs.get("JS_STANDALONE"): +- args.append("--frozen") + + stdout, returncode = _run_process(args) + diff --git a/icecat-1742849.patch b/icecat-1742849.patch deleted file mode 100644 index be05497..0000000 --- a/icecat-1742849.patch +++ /dev/null @@ -1,425 +0,0 @@ - -# HG changeset patch -# User Alexandre Lissy -# Date 1639046833 0 -# Node ID 33f81fb07d792be30dcd1008b21b187ca24f21e6 -# Parent 3382e4da79289240c4c2fe718b461f7a58bce553 -Bug 1742849 - Parsing CCache 4.4+ stats output r=mhentges - -Statistics output changed after 4.4 and requires different parsing, as -well as an extra --verbose to get the same informations as before. - -See https://github.com/ccache/ccache/commit/8892814e8a790d615e44262c0005513d6d49f9e1 - -Differential Revision: https://phabricator.services.mozilla.com/D133086 - -diff --git a/python/mozbuild/mozbuild/controller/building.py b/python/mozbuild/mozbuild/controller/building.py ---- a/python/mozbuild/mozbuild/controller/building.py -+++ b/python/mozbuild/mozbuild/controller/building.py -@@ -5,16 +5,17 @@ - from __future__ import absolute_import, print_function, unicode_literals - - import errno - import getpass - import io - import json - import logging - import os -+import re - import shutil - import six - import subprocess - import sys - import time - - from collections import ( - Counter, -@@ -583,21 +584,24 @@ class BuildMonitor(MozbuildObject): - "Swap in/out (MB): {sin}/{sout}", - ) - - def ccache_stats(self): - ccache_stats = None - - ccache = mozfile.which("ccache") - if ccache: -+ # With CCache v4.4+ statistics might require --verbose -+ is_version_4_4_or_newer = CCacheStats.check_version_4_4_or_newer(ccache) - try: - output = subprocess.check_output( -- [ccache, "-s"], universal_newlines=True -+ [ccache, "-s" if not is_version_4_4_or_newer else "-sv"], -+ universal_newlines=True, - ) -- ccache_stats = CCacheStats(output) -+ ccache_stats = CCacheStats(output, is_version_4_4_or_newer) - except ValueError as e: - self.log(logging.WARNING, "ccache", {"msg": str(e)}, "{msg}") - return ccache_stats - - - class TerminalLoggingHandler(logging.Handler): - """Custom logging handler that works with terminal window dressing. - -@@ -883,33 +887,154 @@ class CCacheStats(object): - ("cache_files", "files in cache"), - ("cache_size", "cache size"), - ("cache_max_size", "max cache size"), - ] - - DIRECTORY_DESCRIPTION = "cache directory" - PRIMARY_CONFIG_DESCRIPTION = "primary config" - SECONDARY_CONFIG_DESCRIPTION = "secondary config" -+ -+ STATS_KEYS_4_4 = [ -+ ("stats_updated", "Summary/Stats updated"), -+ ( -+ "cache_hit_rate", -+ "Summary/Hits", -+ lambda x: next(iter(re.findall(r"\((.*) %\)", x)), "0.00 %"), -+ ), -+ ( -+ "cache_hit_direct", -+ "Summary/Hits/Direct", -+ lambda x: next(iter(re.findall(r"(\d+)\s+/\s+\d+\s+\(", x)), "0"), -+ ), -+ ( -+ "cache_hit_preprocessed", -+ "Summary/Hits/Preprocessed", -+ lambda x: next(iter(re.findall(r"(\d+)\s+/\s+\d+\s+\(", x)), "0"), -+ ), -+ ("cache_miss", "Summary/Misses"), -+ ("error", "Summary/Errors"), -+ ("linking", "Uncacheable/Called for linking"), -+ ("preprocessing", "Uncacheable/Called for preprocessing"), -+ ("failed", "Uncacheable/Compilation failed"), -+ ("preprocessor_error", "Uncacheable/Preprocessing failed"), -+ ("cache_file_missing", "Errors/Missing cache file"), -+ ("bad_args", "Uncacheable/Bad compiler arguments"), -+ ("autoconf", "Uncacheable/Autoconf compile/link"), -+ ("no_input", "Uncacheable/No input file"), -+ ("num_cleanups", "Primary storage/Cleanups"), -+ ("cache_files", "Primary storage/Files"), -+ # Cache size is reported in GB, see -+ # https://github.com/ccache/ccache/commit/8892814e8a790d615e44262c0005513d6d49f9e1#diff-30ec2bbfafe4c3842c8e35179ef0d3253a66dcc054812e50049d0ca3b10e317fR274 -+ ( -+ "cache_size", -+ "Primary storage/Cache size (GB)", -+ lambda x: str( -+ float(next(iter(re.findall(r"(.*)\s+/\s+.*\s+\(", x)), "0")) -+ * CCacheStats.GiB -+ ), -+ True, # Allow to continue evaluation for the next value -+ ), -+ ( -+ "cache_max_size", -+ "Primary storage/Cache size (GB)", -+ lambda x: str( -+ float(next(iter(re.findall(r".*\s+/\s+(.*)\s+\(", x)), "0")) -+ * CCacheStats.GiB -+ ), -+ ), -+ ] -+ -+ SKIP_KEYS_4_4 = [ -+ "Summary/Uncacheable", -+ "Summary/Misses/Direct", -+ "Summary/Misses/Preprocessed", -+ "Primary storage/Hits", -+ "Primary storage/Misses", -+ ] -+ -+ DIRECTORY_DESCRIPTION_4_4 = "Summary/Cache directory" -+ PRIMARY_CONFIG_DESCRIPTION_4_4 = "Summary/Primary config" -+ SECONDARY_CONFIG_DESCRIPTION_4_4 = "Summary/Secondary config" -+ - ABSOLUTE_KEYS = {"cache_files", "cache_size", "cache_max_size"} - FORMAT_KEYS = {"cache_size", "cache_max_size"} - - GiB = 1024 ** 3 - MiB = 1024 ** 2 - KiB = 1024 - -- def __init__(self, output=None): -+ def __init__(self, output=None, is_version_4_4_or_newer=False): - """Construct an instance from the output of ccache -s.""" - self._values = {} - self.cache_dir = "" - self.primary_config = "" - self.secondary_config = "" - - if not output: - return - -+ if is_version_4_4_or_newer: -+ self._parse_human_format_4_4_plus(output) -+ else: -+ self._parse_human_format(output) -+ -+ def _parse_human_format_4_4_plus(self, content): -+ head = "" -+ subhead = "" -+ -+ for line in content.splitlines(): -+ name = "" -+ if not line: -+ continue -+ if line.startswith(" "): -+ if not line.startswith(" "): -+ subhead = line.strip().split(":")[0] -+ name = line.strip().split(":")[0] -+ raw_value = ":".join(line.split(":")[1:]).strip() -+ if raw_value: -+ key = head -+ if subhead != name: -+ key += "/{}".format(subhead) -+ key += "/{}".format(name) -+ self._parse_line_4_4_plus(key, raw_value) -+ else: -+ head = line.strip(":") -+ subhead = "" -+ -+ def _parse_line_4_4_plus(self, key, value): -+ if key.startswith(self.DIRECTORY_DESCRIPTION_4_4): -+ self.cache_dir = value -+ elif key.startswith(self.PRIMARY_CONFIG_DESCRIPTION_4_4): -+ self.primary_config = value -+ elif key.startswith(self.SECONDARY_CONFIG_DESCRIPTION_4_4): -+ self.secondary_config = value -+ else: -+ for seq in self.STATS_KEYS_4_4: -+ stat_key = seq[0] -+ stat_description = seq[1] -+ raw_value = value -+ if len(seq) > 2: -+ raw_value = seq[2](value) -+ if stat_key not in self._values and key == stat_description: -+ self._values[stat_key] = self._parse_value(raw_value) -+ -+ # We dont want to break when we need to extract two infos -+ # from the same line -+ if len(seq) < 4: -+ break -+ else: -+ if key not in self.SKIP_KEYS_4_4: -+ raise ValueError( -+ "Failed to parse ccache stats output: '{}' '{}'".format( -+ key, value -+ ) -+ ) -+ -+ def _parse_human_format(self, output): - for line in output.splitlines(): - line = line.strip() - if line: - self._parse_line(line) - - def _parse_line(self, line): - line = six.ensure_text(line) - if line.startswith(self.DIRECTORY_DESCRIPTION): -@@ -1050,6 +1175,29 @@ - else: - return "%.1f Kbytes" % (float(v) / CCacheStats.KiB) - -+ @staticmethod -+ def check_version_4_4_or_newer(ccache): -+ output_version = subprocess.check_output( -+ [ccache, "--version"], universal_newlines=True -+ ) -+ return CCacheStats._is_version_4_4_or_newer(output_version) -+ -+ @staticmethod -+ def _is_version_4_4_or_newer(output): -+ if "ccache version" not in output: -+ return False -+ -+ major = 0 -+ minor = 0 -+ -+ for line in output.splitlines(): -+ version = re.search(r"ccache version (\d+).(\d+).*", line) -+ if version: -+ major = int(version.group(1)) -+ minor = int(version.group(2)) -+ break -+ -+ return ((major << 8) + minor) >= ((4 << 8) + 4) - - class BuildDriver(MozbuildObject): - """Provides a high-level API for build actions.""" -diff --git a/python/mozbuild/mozbuild/test/controller/test_ccachestats.py b/python/mozbuild/mozbuild/test/controller/test_ccachestats.py ---- a/python/mozbuild/mozbuild/test/controller/test_ccachestats.py -+++ b/python/mozbuild/mozbuild/test/controller/test_ccachestats.py -@@ -223,16 +223,143 @@ class TestCcacheStats(unittest.TestCase) - cleanups performed 3154 - files in cache 18525 - cache size 13.4 GB - max cache size 15.0 GB - """.format( - timestamp=time.strftime("%c"), timestamp2=time.strftime("%c") - ) - -+ VERSION_3_5_GIT = """ -+ ccache version 3.5.1+2_gf5309092_dirty -+ -+ Copyright (C) 2002-2007 Andrew Tridgell -+ Copyright (C) 2009-2019 Joel Rosdahl -+ -+ This program is free software; you can redistribute it and/or modify it under -+ the terms of the GNU General Public License as published by the Free Software -+ Foundation; either version 3 of the License, or (at your option) any later -+ version. -+ """ -+ -+ VERSION_4_2 = """ -+ ccache version 4.2.1 -+ -+ Copyright (C) 2002-2007 Andrew Tridgell -+ Copyright (C) 2009-2021 Joel Rosdahl and other contributors -+ -+ See for a complete list of contributors. -+ -+ This program is free software; you can redistribute it and/or modify it under -+ the terms of the GNU General Public License as published by the Free Software -+ Foundation; either version 3 of the License, or (at your option) any later -+ version. -+ """ -+ -+ VERSION_4_4 = """ -+ ccache version 4.4 -+ Features: file-storage http-storage -+ -+ Copyright (C) 2002-2007 Andrew Tridgell -+ Copyright (C) 2009-2021 Joel Rosdahl and other contributors -+ -+ See for a complete list of contributors. -+ -+ This program is free software; you can redistribute it and/or modify it under -+ the terms of the GNU General Public License as published by the Free Software -+ Foundation; either version 3 of the License, or (at your option) any later -+ version. -+ """ -+ -+ VERSION_4_4_2 = """ -+ ccache version 4.4.2 -+ Features: file-storage http-storage -+ -+ Copyright (C) 2002-2007 Andrew Tridgell -+ Copyright (C) 2009-2021 Joel Rosdahl and other contributors -+ -+ See for a complete list of contributors. -+ -+ This program is free software; you can redistribute it and/or modify it under -+ the terms of the GNU General Public License as published by the Free Software -+ Foundation; either version 3 of the License, or (at your option) any later -+ version. -+ """ -+ -+ VERSION_4_5 = """ -+ ccache version 4.5.1 -+ Features: file-storage http-storage redis-storage -+ -+ Copyright (C) 2002-2007 Andrew Tridgell -+ Copyright (C) 2009-2021 Joel Rosdahl and other contributors -+ -+ See for a complete list of contributors. -+ -+ This program is free software; you can redistribute it and/or modify it under -+ the terms of the GNU General Public License as published by the Free Software -+ Foundation; either version 3 of the License, or (at your option) any later -+ version. -+ """ -+ -+ STAT10 = """ -+Summary: -+ Cache directory: /home/suer/.ccache -+ Primary config: /home/suer/.ccache/ccache.conf -+ Secondary config: /etc/ccache.conf -+ Stats updated: {timestamp} -+ Hits: 916 / 9343 (9.80 %) -+ Direct: 197 / 197 (100.0 %) -+ Preprocessed: 719 / 719 (100.0 %) -+ Misses: 8427 -+ Direct: 0 -+ Preprocessed: 0 -+ Errors: 1 -+ Uncacheable: 1251 -+Primary storage: -+ Hits: 0 / 0 -+ Misses: 0 -+ Cache size (GB): 4.41 / 5.00 (88.27 %) -+ Files: 4425 -+ Cleanups: 161 -+Errors: -+ Missing cache file: 1 -+Uncacheable: -+ Autoconf compile/link: 418 -+ Bad compiler arguments: 6 -+ Called for linking: 569 -+ Called for preprocessing: 110 -+ Compilation failed: 49 -+ No input file: 9 -+ Preprocessing failed: 90 -+ """.format( -+ timestamp=time.strftime("%c") -+ ) -+ -+ STAT11 = """ -+Summary: -+ Cache directory: /home/suer/.ccache -+ Primary config: /home/suer/.ccache/ccache.conf -+ Secondary config: /etc/ccache.conf -+ Stats updated: {timestamp} -+ Hits: 0 / 0 -+ Direct: 0 / 0 -+ Preprocessed: 0 / 0 -+ Misses: 0 -+ Direct: 0 -+ Preprocessed: 0 -+Primary storage: -+ Hits: 0 / 0 -+ Misses: 0 -+ Cache size (GB): 0.00 / 5.00 (0.00 %) -+ Files: 0 -+ Cleanups: 16 -+ """.format( -+ timestamp=time.strftime("%c") -+ ) -+ - def test_parse_garbage_stats_message(self): - self.assertRaises(ValueError, CCacheStats, self.STAT_GARBAGE) - - def test_parse_zero_stats_message(self): - stats = CCacheStats(self.STAT0) - self.assertEqual(stats.cache_dir, "/home/tlin/.ccache") - self.assertEqual(stats.hit_rates(), (0, 0, 0)) - -@@ -290,11 +417,26 @@ class TestCcacheStats(unittest.TestCase) - stat8 = CCacheStats(self.STAT8) - self.assertTrue(stat8) - - def test_stats_version35(self): - # Test parsing 3.5 output. - stat9 = CCacheStats(self.STAT9) - self.assertTrue(stat9) - -+ def test_stats_version44(self): -+ # verify version checks -+ self.assertFalse(CCacheStats._is_version_4_4_or_newer(self.VERSION_3_5_GIT)) -+ self.assertFalse(CCacheStats._is_version_4_4_or_newer(self.VERSION_4_2)) -+ self.assertTrue(CCacheStats._is_version_4_4_or_newer(self.VERSION_4_4)) -+ self.assertTrue(CCacheStats._is_version_4_4_or_newer(self.VERSION_4_4_2)) -+ self.assertTrue(CCacheStats._is_version_4_4_or_newer(self.VERSION_4_5)) -+ -+ # Test parsing 4.4+ output. -+ stat10 = CCacheStats(self.STAT10, True) -+ self.assertTrue(stat10) -+ -+ stat11 = CCacheStats(self.STAT11, True) -+ self.assertTrue(stat11) -+ - - if __name__ == "__main__": - main() - - diff --git a/icecat-glibc-dynstack.patch b/icecat-glibc-dynstack.patch deleted file mode 100644 index 74878b5..0000000 --- a/icecat-glibc-dynstack.patch +++ /dev/null @@ -1,62 +0,0 @@ -diff -ur a/js/xpconnect/src/XPCJSContext.cpp b/js/xpconnect/src/XPCJSContext.cpp ---- a/js/xpconnect/src/XPCJSContext.cpp 2021-07-05 21:16:02.000000000 +0200 -+++ b/js/xpconnect/src/XPCJSContext.cpp 2021-07-19 15:01:24.083460460 +0200 -@@ -81,14 +81,6 @@ - using namespace JS; - using mozilla::dom::AutoEntryScript; - --// The watchdog thread loop is pretty trivial, and should not require much stack --// space to do its job. So only give it 32KiB or the platform minimum. --#if !defined(PTHREAD_STACK_MIN) --# define PTHREAD_STACK_MIN 0 --#endif --static constexpr size_t kWatchdogStackSize = -- PTHREAD_STACK_MIN < 32 * 1024 ? 32 * 1024 : PTHREAD_STACK_MIN; -- - static void WatchdogMain(void* arg); - class Watchdog; - class WatchdogManager; -@@ -161,7 +153,7 @@ - // watchdog, we need to join it on shutdown. - mThread = PR_CreateThread(PR_USER_THREAD, WatchdogMain, this, - PR_PRIORITY_NORMAL, PR_GLOBAL_THREAD, -- PR_JOINABLE_THREAD, kWatchdogStackSize); -+ PR_JOINABLE_THREAD, 0); - if (!mThread) { - MOZ_CRASH("PR_CreateThread failed!"); - } -diff -ur a/security/sandbox/linux/launch/SandboxLaunch.cpp b/security/sandbox/linux/launch/SandboxLaunch.cpp ---- a/security/sandbox/linux/launch/SandboxLaunch.cpp 2021-07-05 18:20:36.000000000 +0200 -+++ b/security/sandbox/linux/launch/SandboxLaunch.cpp 2021-07-20 08:39:17.272136982 +0200 -@@ -489,7 +489,8 @@ static int CloneCallee(void* aPtr) { - // we don't currently support sandboxing under valgrind. - MOZ_NEVER_INLINE MOZ_ASAN_BLACKLIST static pid_t DoClone(int aFlags, - jmp_buf* aCtx) { -- uint8_t miniStack[PTHREAD_STACK_MIN]; -+ static constexpr size_t kStackAlignment = 16; -+ uint8_t miniStack[4096] __attribute__((aligned(kStackAlignment))); - #ifdef __hppa__ - void* stackPtr = miniStack; - #else -@@ -510,13 +511,19 @@ static pid_t ForkWithFlags(int aFlags) { - CLONE_CHILD_CLEARTID; - MOZ_RELEASE_ASSERT((aFlags & kBadFlags) == 0); - -+ // Block signals due to small stack in DoClone. -+ sigset_t oldSigs; -+ BlockAllSignals(&oldSigs); -+ -+ int ret = 0; - jmp_buf ctx; - if (setjmp(ctx) == 0) { - // In the parent and just called setjmp: -- return DoClone(aFlags | SIGCHLD, &ctx); -+ ret = DoClone(aFlags | SIGCHLD, &ctx); - } -+ RestoreSignals(&oldSigs); - // In the child and have longjmp'ed: -- return 0; -+ return ret; - } - - static bool WriteStringToFile(const char* aPath, const char* aStr, diff --git a/icecat-python3.11-open-U.patch b/icecat-python3.11-open-U.patch deleted file mode 100644 index 5490515..0000000 --- a/icecat-python3.11-open-U.patch +++ /dev/null @@ -1,93 +0,0 @@ ---- a/dom/base/usecounters.py.python-open-U 2022-06-28 04:37:00.000000000 +0200 -+++ b/dom/base/usecounters.py 2022-07-11 19:17:46.266517761 +0200 -@@ -8,7 +8,7 @@ import re - - def read_conf(conf_filename): - # Can't read/write from a single StringIO, so make a new one for reading. -- stream = open(conf_filename, "rU") -+ stream = open(conf_filename, "r") - - def parse_counters(stream): - for line_num, line in enumerate(stream): ---- a/python/mozbuild/mozbuild/action/process_define_files.py.python-open-U 2022-06-28 04:37:39.000000000 +0200 -+++ b/python/mozbuild/mozbuild/action/process_define_files.py 2022-07-11 19:18:24.056417112 +0200 -@@ -36,7 +36,7 @@ def process_define_file(output, input): - ) and not config.substs.get("JS_STANDALONE"): - config = PartialConfigEnvironment(mozpath.join(topobjdir, "js", "src")) - -- with open(path, "rU") as input: -+ with open(path, "r") as input: - r = re.compile( - "^\s*#\s*(?P[a-z]+)(?:\s+(?P\S+)(?:\s+(?P\S+))?)?", re.U - ) ---- a/python/mozbuild/mozbuild/backend/base.py.python-open-U 2022-06-28 04:37:39.000000000 +0200 -+++ b/python/mozbuild/mozbuild/backend/base.py 2022-07-11 19:18:34.165390187 +0200 -@@ -272,7 +272,7 @@ class BuildBackend(LoggingMixin): - return status - - @contextmanager -- def _write_file(self, path=None, fh=None, readmode="rU"): -+ def _write_file(self, path=None, fh=None, readmode="r"): - """Context manager to write a file. - - This is a glorified wrapper around FileAvoidWrite with integration to ---- a/python/mozbuild/mozbuild/preprocessor.py.python-open-U 2022-06-28 04:37:20.000000000 +0200 -+++ b/python/mozbuild/mozbuild/preprocessor.py 2022-07-11 19:19:30.677239685 +0200 -@@ -531,7 +531,7 @@ class Preprocessor: - - if args: - for f in args: -- with io.open(f, "rU", encoding="utf-8") as input: -+ with io.open(f, "r", encoding="utf-8") as input: - self.processFile(input=input, output=out) - if depfile: - mk = Makefile() -@@ -860,7 +860,7 @@ class Preprocessor: - args = self.applyFilters(args) - if not os.path.isabs(args): - args = os.path.join(self.curdir, args) -- args = io.open(args, "rU", encoding="utf-8") -+ args = io.open(args, "r", encoding="utf-8") - except Preprocessor.Error: - raise - except Exception: -@@ -914,7 +914,7 @@ class Preprocessor: - def preprocess(includes=[sys.stdin], defines={}, output=sys.stdout, marker="#"): - pp = Preprocessor(defines=defines, marker=marker) - for f in includes: -- with io.open(f, "rU", encoding="utf-8") as input: -+ with io.open(f, "r", encoding="utf-8") as input: - pp.processFile(input=input, output=output) - return pp.includes - ---- a/python/mozbuild/mozbuild/util.py.python-open-U 2022-06-28 04:37:40.000000000 +0200 -+++ b/python/mozbuild/mozbuild/util.py 2022-07-11 19:19:19.903268374 +0200 -@@ -225,7 +225,7 @@ class FileAvoidWrite(BytesIO): - still occur, as well as diff capture if requested. - """ - -- def __init__(self, filename, capture_diff=False, dry_run=False, readmode="rU"): -+ def __init__(self, filename, capture_diff=False, dry_run=False, readmode="r"): - BytesIO.__init__(self) - self.name = filename - assert type(capture_diff) == bool ---- a/python/mozbuild/mozpack/files.py.python-open-U 2022-06-28 04:37:40.000000000 +0200 -+++ b/python/mozbuild/mozpack/files.py 2022-07-11 19:19:40.372213866 +0200 -@@ -574,7 +574,7 @@ class PreprocessedFile(BaseFile): - pp = Preprocessor(defines=self.defines, marker=self.marker) - pp.setSilenceDirectiveWarnings(self.silence_missing_directive_warnings) - -- with _open(self.path, "rU") as input: -+ with _open(self.path, "r") as input: - with _open(os.devnull, "w") as output: - pp.processFile(input=input, output=output) - -@@ -631,7 +631,7 @@ class PreprocessedFile(BaseFile): - pp = Preprocessor(defines=self.defines, marker=self.marker) - pp.setSilenceDirectiveWarnings(self.silence_missing_directive_warnings) - -- with _open(self.path, "rU") as input: -+ with _open(self.path, "r") as input: - pp.processFile(input=input, output=dest, depfile=deps_out) - - dest.close() diff --git a/icecat-python3.11-regex-inline-flags.patch b/icecat-python3.11-regex-inline-flags.patch deleted file mode 100644 index 39481ec..0000000 --- a/icecat-python3.11-regex-inline-flags.patch +++ /dev/null @@ -1,27 +0,0 @@ ---- thunderbird-91.11.0/xpcom/idl-parser/xpidl/xpidl.py.python-inline-flags 2022-06-28 04:39:56.000000000 +0200 -+++ thunderbird-91.11.0/xpcom/idl-parser/xpidl/xpidl.py 2022-07-11 21:55:05.287553042 +0200 -@@ -1563,13 +1563,13 @@ class IDLParser(object): - t_ignore = " \t" - - def t_multilinecomment(self, t): -- r"/\*(?s).*?\*/" -+ r"/\*(?s:.*?)\*/" - t.lexer.lineno += t.value.count("\n") - if t.value.startswith("/**"): - self._doccomments.append(t.value) - - def t_singlelinecomment(self, t): -- r"(?m)//.*?$" -+ r"(?m://.*?$)" - - def t_IID(self, t): - return t -@@ -1582,7 +1582,7 @@ class IDLParser(object): - return t - - def t_LCDATA(self, t): -- r"(?s)%\{[ ]*C\+\+[ ]*\n(?P.*?\n?)%\}[ ]*(C\+\+)?" -+ r"(?s:%\{[ ]*C\+\+[ ]*\n(?P.*?\n?)%\}[ ]*(C\+\+)?)" - t.type = "CDATA" - t.value = t.lexer.lexmatch.group("cdata") - t.lexer.lineno += t.value.count("\n") diff --git a/icecat.spec b/icecat.spec index 2864e7d..c4eff6e 100644 --- a/icecat.spec +++ b/icecat.spec @@ -9,7 +9,7 @@ ExcludeArch: %{ix86} %{arm} # Bundled cbindgen makes build slow. # Enable only if system cbindgen is not available. -%global use_bundled_cbindgen 1 +%global use_bundled_cbindgen 0 #################### @@ -140,34 +140,17 @@ Source18: node-stdout-nonblocking-wrapper Source19: run-wayland-compositor -# With clang LLVM 16 rust-bindgen 0.56.0 is too old, combined -# https://github.com/rust-lang/rust-bindgen/pull/2319 -# https://github.com/rust-lang/rust-bindgen/pull/2339 -Patch7: rust-bindgen-2319-2339.patch - -# Needed with rust 1.70 -# https://github.com/mozilla/mp4parse-rust/commit/8b5b652d38e007e736bb442ccd5aa5ed699db100 -Patch8: mp4parse-rust-8b5b652d38e007e736bb442ccd5aa5ed699db100.patch - -Patch40: build-aarch64-skia.patch -Patch44: build-arm-libopus.patch +# Gnuzilla patch: +# https://lists.gnu.org/archive/html/help-gnuzilla/2025-09/msg00002.html +Patch7: icecat-140.3.0-remove_frozen_cargo_flag.patch # Fedora specific patches -Patch220: firefox-nss-version.patch Patch221: firefox-nss-addon-hack.patch -Patch223: %{name}-glibc-dynstack.patch Patch224: %{name}-GLIBCXX-fix-for-GCC-12.patch # ARM run-time patch Patch226: rhbz-1354671.patch -# Upstream patches -Patch401: icecat-1742849.patch -Patch403: icecat-python3.11-open-U.patch -Patch404: icecat-python3.11-regex-inline-flags.patch -Patch412: mozilla-1337988.patch -Patch422: mozilla-1580174-webrtc-popup.patch - # Fix crash on ppc64le (mozilla#1512162) Patch423: mozilla-1512162.patch diff --git a/mozilla-1337988.patch b/mozilla-1337988.patch deleted file mode 100644 index 8c40445..0000000 --- a/mozilla-1337988.patch +++ /dev/null @@ -1,496 +0,0 @@ -diff -up firefox-56.0/dom/plugins/base/nsJSNPRuntime.cpp.1337988 firefox-56.0/dom/plugins/base/nsJSNPRuntime.cpp ---- firefox-56.0/dom/plugins/base/nsJSNPRuntime.cpp.1337988 2017-09-14 22:15:56.000000000 +0200 -+++ firefox-56.0/dom/plugins/base/nsJSNPRuntime.cpp 2017-09-25 10:34:11.205611698 +0200 -@@ -1719,7 +1719,7 @@ NPObjWrapper_ObjectMoved(JSObject *obj, - auto entry = - static_cast(sNPObjWrappers->Search(npobj)); - MOZ_ASSERT(entry && entry->mJSObj); -- MOZ_ASSERT(entry->mJSObj == old); -+ MOZ_ASSERT(entry->mJSObj.unbarrieredGetPtr() == old); - entry->mJSObj = obj; - } - -diff -up firefox-56.0/js/ipc/JavaScriptShared.cpp.1337988 firefox-56.0/js/ipc/JavaScriptShared.cpp ---- firefox-56.0/js/ipc/JavaScriptShared.cpp.1337988 2017-07-31 18:20:47.000000000 +0200 -+++ firefox-56.0/js/ipc/JavaScriptShared.cpp 2017-09-25 10:34:11.205611698 +0200 -@@ -101,7 +101,7 @@ IdToObjectMap::has(const ObjectId& id, c - auto p = table_.lookup(id); - if (!p) - return false; -- return p->value() == obj; -+ return p->value().unbarrieredGet() == obj; - } - #endif - -diff -up firefox-56.0/js/public/RootingAPI.h.1337988 firefox-56.0/js/public/RootingAPI.h ---- firefox-56.0/js/public/RootingAPI.h.1337988 2017-07-31 18:20:47.000000000 +0200 -+++ firefox-56.0/js/public/RootingAPI.h 2017-09-25 10:34:11.206611695 +0200 -@@ -148,6 +148,10 @@ template - struct PersistentRootedMarker; - } /* namespace gc */ - -+#define DECLARE_POINTER_COMPARISON_OPS(T) \ -+ bool operator==(const T& other) const { return get() == other; } \ -+ bool operator!=(const T& other) const { return get() != other; } -+ - // Important: Return a reference so passing a Rooted, etc. to - // something that takes a |const T&| is not a GC hazard. - #define DECLARE_POINTER_CONSTREF_OPS(T) \ -@@ -237,8 +241,6 @@ class Heap : public js::HeapBase::value, - "Type T must be a public GC pointer type"); - public: -- using ElementType = T; -- - Heap() { - static_assert(sizeof(T) == sizeof(Heap), - "Heap must be binary compatible with T."); -@@ -385,8 +387,6 @@ template - class TenuredHeap : public js::HeapBase> - { - public: -- using ElementType = T; -- - TenuredHeap() : bits(0) { - static_assert(sizeof(T) == sizeof(TenuredHeap), - "TenuredHeap must be binary compatible with T."); -@@ -394,6 +394,9 @@ class TenuredHeap : public js::HeapBase< - explicit TenuredHeap(T p) : bits(0) { setPtr(p); } - explicit TenuredHeap(const TenuredHeap& p) : bits(0) { setPtr(p.getPtr()); } - -+ bool operator==(const TenuredHeap& other) { return bits == other.bits; } -+ bool operator!=(const TenuredHeap& other) { return bits != other.bits; } -+ - void setPtr(T newPtr) { - MOZ_ASSERT((reinterpret_cast(newPtr) & flagsMask) == 0); - if (newPtr) -@@ -470,8 +473,6 @@ class MOZ_NONHEAP_CLASS Handle : public - friend class JS::MutableHandle; - - public: -- using ElementType = T; -- - /* Creates a handle from a handle of a type convertible to T. */ - template - MOZ_IMPLICIT Handle(Handle handle, -@@ -533,6 +534,7 @@ class MOZ_NONHEAP_CLASS Handle : public - MOZ_IMPLICIT Handle(MutableHandle& root, - typename mozilla::EnableIf::value, int>::Type dummy = 0); - -+ DECLARE_POINTER_COMPARISON_OPS(T); - DECLARE_POINTER_CONSTREF_OPS(T); - DECLARE_NONPOINTER_ACCESSOR_METHODS(*ptr); - -@@ -559,8 +561,6 @@ template - class MOZ_STACK_CLASS MutableHandle : public js::MutableHandleBase> - { - public: -- using ElementType = T; -- - inline MOZ_IMPLICIT MutableHandle(Rooted* root); - inline MOZ_IMPLICIT MutableHandle(PersistentRooted* root); - -@@ -589,6 +589,7 @@ class MOZ_STACK_CLASS MutableHandle : pu - return h; - } - -+ DECLARE_POINTER_COMPARISON_OPS(T); - DECLARE_POINTER_CONSTREF_OPS(T); - DECLARE_NONPOINTER_ACCESSOR_METHODS(*ptr); - DECLARE_NONPOINTER_MUTABLE_ACCESSOR_METHODS(*ptr); -@@ -805,8 +806,6 @@ class MOZ_RAII Rooted : public js::Roote - } - - public: -- using ElementType = T; -- - template - explicit Rooted(const RootingContext& cx) - : ptr(GCPolicy::initial()) -@@ -839,6 +838,7 @@ class MOZ_RAII Rooted : public js::Roote - ptr = mozilla::Move(value); - } - -+ DECLARE_POINTER_COMPARISON_OPS(T); - DECLARE_POINTER_CONSTREF_OPS(T); - DECLARE_POINTER_ASSIGN_OPS(Rooted, T); - DECLARE_NONPOINTER_ACCESSOR_METHODS(ptr); -@@ -903,14 +903,13 @@ template - class MOZ_RAII FakeRooted : public RootedBase> - { - public: -- using ElementType = T; -- - template - explicit FakeRooted(CX* cx) : ptr(JS::GCPolicy::initial()) {} - - template - FakeRooted(CX* cx, T initial) : ptr(initial) {} - -+ DECLARE_POINTER_COMPARISON_OPS(T); - DECLARE_POINTER_CONSTREF_OPS(T); - DECLARE_POINTER_ASSIGN_OPS(FakeRooted, T); - DECLARE_NONPOINTER_ACCESSOR_METHODS(ptr); -@@ -931,8 +930,6 @@ template - class FakeMutableHandle : public js::MutableHandleBase> - { - public: -- using ElementType = T; -- - MOZ_IMPLICIT FakeMutableHandle(T* t) { - ptr = t; - } -@@ -1124,8 +1121,6 @@ class PersistentRooted : public js::Root - } - - public: -- using ElementType = T; -- - PersistentRooted() : ptr(GCPolicy::initial()) {} - - explicit PersistentRooted(RootingContext* cx) -@@ -1203,6 +1198,7 @@ class PersistentRooted : public js::Root - } - } - -+ DECLARE_POINTER_COMPARISON_OPS(T); - DECLARE_POINTER_CONSTREF_OPS(T); - DECLARE_POINTER_ASSIGN_OPS(PersistentRooted, T); - DECLARE_NONPOINTER_ACCESSOR_METHODS(ptr); -@@ -1234,8 +1230,6 @@ class JS_PUBLIC_API(ObjectPtr) - Heap value; - - public: -- using ElementType = JSObject*; -- - ObjectPtr() : value(nullptr) {} - - explicit ObjectPtr(JSObject* obj) : value(obj) {} -@@ -1342,177 +1336,6 @@ Swap(JS::TenuredHeap& aX, JS::Tenured - - } /* namespace mozilla */ - --namespace js { --namespace detail { -- --// DefineComparisonOps is a trait which selects which wrapper classes to define --// operator== and operator!= for. It supplies a getter function to extract the --// value to compare. This is used to avoid triggering the automatic read --// barriers where appropriate. --// --// If DefineComparisonOps is not specialized for a particular wrapper you may --// get errors such as 'invalid operands to binary expression' or 'no match for --// operator==' when trying to compare against instances of the wrapper. -- --template --struct DefineComparisonOps : mozilla::FalseType {}; -- --template --struct DefineComparisonOps> : mozilla::TrueType { -- static const T& get(const JS::Heap& v) { return v.unbarrieredGet(); } --}; -- --template --struct DefineComparisonOps> : mozilla::TrueType { -- static const T get(const JS::TenuredHeap& v) { return v.unbarrieredGetPtr(); } --}; -- --template <> --struct DefineComparisonOps : mozilla::TrueType { -- static const JSObject* get(const JS::ObjectPtr& v) { return v.unbarrieredGet(); } --}; -- --template --struct DefineComparisonOps> : mozilla::TrueType { -- static const T& get(const JS::Rooted& v) { return v.get(); } --}; -- --template --struct DefineComparisonOps> : mozilla::TrueType { -- static const T& get(const JS::Handle& v) { return v.get(); } --}; -- --template --struct DefineComparisonOps> : mozilla::TrueType { -- static const T& get(const JS::MutableHandle& v) { return v.get(); } --}; -- --template --struct DefineComparisonOps> : mozilla::TrueType { -- static const T& get(const JS::PersistentRooted& v) { return v.get(); } --}; -- --template --struct DefineComparisonOps> : mozilla::TrueType { -- static const T& get(const js::FakeRooted& v) { return v.get(); } --}; -- --template --struct DefineComparisonOps> : mozilla::TrueType { -- static const T& get(const js::FakeMutableHandle& v) { return v.get(); } --}; -- --} /* namespace detail */ --} /* namespace js */ -- --// Overload operator== and operator!= for all types with the DefineComparisonOps --// trait using the supplied getter. --// --// There are four cases: -- --// Case 1: comparison between two wrapper objects. -- --template --typename mozilla::EnableIf::value && -- js::detail::DefineComparisonOps::value, bool>::Type --operator==(const T& a, const U& b) { -- return js::detail::DefineComparisonOps::get(a) == js::detail::DefineComparisonOps::get(b); --} -- --template --typename mozilla::EnableIf::value && -- js::detail::DefineComparisonOps::value, bool>::Type --operator!=(const T& a, const U& b) { -- return !(a == b); --} -- --// Case 2: comparison between a wrapper object and its unwrapped element type. -- --template --typename mozilla::EnableIf::value, bool>::Type --operator==(const T& a, const typename T::ElementType& b) { -- return js::detail::DefineComparisonOps::get(a) == b; --} -- --template --typename mozilla::EnableIf::value, bool>::Type --operator!=(const T& a, const typename T::ElementType& b) { -- return !(a == b); --} -- --template --typename mozilla::EnableIf::value, bool>::Type --operator==(const typename T::ElementType& a, const T& b) { -- return a == js::detail::DefineComparisonOps::get(b); --} -- --template --typename mozilla::EnableIf::value, bool>::Type --operator!=(const typename T::ElementType& a, const T& b) { -- return !(a == b); --} -- --// Case 3: For pointer wrappers, comparison between the wrapper and a const --// element pointer. -- --template --typename mozilla::EnableIf::value && -- mozilla::IsPointer::value, bool>::Type --operator==(const typename mozilla::RemovePointer::Type* a, const T& b) { -- return a == js::detail::DefineComparisonOps::get(b); --} -- --template --typename mozilla::EnableIf::value && -- mozilla::IsPointer::value, bool>::Type --operator!=(const typename mozilla::RemovePointer::Type* a, const T& b) { -- return !(a == b); --} -- --template --typename mozilla::EnableIf::value && -- mozilla::IsPointer::value, bool>::Type --operator==(const T& a, const typename mozilla::RemovePointer::Type* b) { -- return js::detail::DefineComparisonOps::get(a) == b; --} -- --template --typename mozilla::EnableIf::value && -- mozilla::IsPointer::value, bool>::Type --operator!=(const T& a, const typename mozilla::RemovePointer::Type* b) { -- return !(a == b); --} -- --// Case 4: For pointer wrappers, comparison between the wrapper and nullptr. -- --template --typename mozilla::EnableIf::value && -- mozilla::IsPointer::value, bool>::Type --operator==(std::nullptr_t a, const T& b) { -- return a == js::detail::DefineComparisonOps::get(b); --} -- --template --typename mozilla::EnableIf::value && -- mozilla::IsPointer::value, bool>::Type --operator!=(std::nullptr_t a, const T& b) { -- return !(a == b); --} -- --template --typename mozilla::EnableIf::value && -- mozilla::IsPointer::value, bool>::Type --operator==(const T& a, std::nullptr_t b) { -- return js::detail::DefineComparisonOps::get(a) == b; --} -- --template --typename mozilla::EnableIf::value && -- mozilla::IsPointer::value, bool>::Type --operator!=(const T& a, std::nullptr_t b) { -- return !(a == b); --} -- - #undef DELETE_ASSIGNMENT_OPS - - #endif /* js_RootingAPI_h */ -diff -up firefox-56.0/js/src/gc/Barrier.h.1337988 firefox-56.0/js/src/gc/Barrier.h ---- firefox-56.0/js/src/gc/Barrier.h.1337988 2017-09-14 22:16:01.000000000 +0200 -+++ firefox-56.0/js/src/gc/Barrier.h 2017-09-25 10:34:11.206611695 +0200 -@@ -353,8 +353,8 @@ class WriteBarrieredBase : public Barrie - explicit WriteBarrieredBase(const T& v) : BarrieredBase(v) {} - - public: -- using ElementType = T; - -+ DECLARE_POINTER_COMPARISON_OPS(T); - DECLARE_POINTER_CONSTREF_OPS(T); - - // Use this if the automatic coercion to T isn't working. -@@ -612,13 +612,14 @@ class ReadBarriered : public ReadBarrier - return *this; - } - -- const T& get() const { -- if (InternalBarrierMethods::isMarkable(this->value)) -- this->read(); -+ const T get() const { -+ if (!InternalBarrierMethods::isMarkable(this->value)) -+ return JS::GCPolicy::initial(); -+ this->read(); - return this->value; - } - -- const T& unbarrieredGet() const { -+ const T unbarrieredGet() const { - return this->value; - } - -@@ -626,9 +627,9 @@ class ReadBarriered : public ReadBarrier - return bool(this->value); - } - -- operator const T&() const { return get(); } -+ operator const T() const { return get(); } - -- const T& operator->() const { return get(); } -+ const T operator->() const { return get(); } - - T* unsafeGet() { return &this->value; } - T const* unsafeGet() const { return &this->value; } -@@ -955,35 +956,6 @@ typedef ReadBarriered - - typedef ReadBarriered ReadBarrieredValue; - --namespace detail { -- --template --struct DefineComparisonOps> : mozilla::TrueType { -- static const T& get(const PreBarriered& v) { return v.get(); } --}; -- --template --struct DefineComparisonOps> : mozilla::TrueType { -- static const T& get(const GCPtr& v) { return v.get(); } --}; -- --template --struct DefineComparisonOps> : mozilla::TrueType { -- static const T& get(const HeapPtr& v) { return v.get(); } --}; -- --template --struct DefineComparisonOps> : mozilla::TrueType { -- static const T& get(const ReadBarriered& v) { return v.unbarrieredGet(); } --}; -- --template <> --struct DefineComparisonOps : mozilla::TrueType { -- static const Value& get(const HeapSlot& v) { return v.get(); } --}; -- --} /* namespace detail */ -- - } /* namespace js */ - - #endif /* gc_Barrier_h */ -diff -up firefox-56.0/js/src/jsapi-tests/testGCHeapPostBarriers.cpp.1337988 firefox-56.0/js/src/jsapi-tests/testGCHeapPostBarriers.cpp ---- firefox-56.0/js/src/jsapi-tests/testGCHeapPostBarriers.cpp.1337988 2017-09-14 22:16:02.000000000 +0200 -+++ firefox-56.0/js/src/jsapi-tests/testGCHeapPostBarriers.cpp 2017-09-25 10:34:11.206611695 +0200 -@@ -5,7 +5,6 @@ - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ - --#include "mozilla/TypeTraits.h" - #include "mozilla/UniquePtr.h" - - #include "js/RootingAPI.h" -diff -up firefox-56.0/js/src/vm/SharedMem.h.1337988 firefox-56.0/js/src/vm/SharedMem.h ---- firefox-56.0/js/src/vm/SharedMem.h.1337988 2017-06-15 22:52:29.000000000 +0200 -+++ firefox-56.0/js/src/vm/SharedMem.h 2017-09-25 10:34:11.206611695 +0200 -@@ -12,8 +12,8 @@ - template - class SharedMem - { -- // static_assert(mozilla::IsPointer::value, -- // "SharedMem encapsulates pointer types"); -+ static_assert(mozilla::IsPointer::value, -+ "SharedMem encapsulates pointer types"); - - enum Sharedness { - IsUnshared, -diff -up firefox-56.0/js/xpconnect/src/XPCInlines.h.1337988 firefox-56.0/js/xpconnect/src/XPCInlines.h ---- firefox-56.0/js/xpconnect/src/XPCInlines.h.1337988 2017-09-14 22:16:03.000000000 +0200 -+++ firefox-56.0/js/xpconnect/src/XPCInlines.h 2017-09-25 10:34:11.206611695 +0200 -@@ -465,7 +465,7 @@ inline - void XPCWrappedNativeTearOff::JSObjectMoved(JSObject* obj, const JSObject* old) - { - MOZ_ASSERT(!IsMarked()); -- MOZ_ASSERT(mJSObject == old); -+ MOZ_ASSERT(mJSObject.unbarrieredGetPtr() == old); - mJSObject = obj; - } - -diff -up firefox-56.0/js/xpconnect/src/XPCWrappedNative.cpp.1337988 firefox-56.0/js/xpconnect/src/XPCWrappedNative.cpp ---- firefox-56.0/js/xpconnect/src/XPCWrappedNative.cpp.1337988 2017-09-14 22:16:03.000000000 +0200 -+++ firefox-56.0/js/xpconnect/src/XPCWrappedNative.cpp 2017-09-25 10:34:11.207611692 +0200 -@@ -874,7 +874,7 @@ void - XPCWrappedNative::FlatJSObjectMoved(JSObject* obj, const JSObject* old) - { - JS::AutoAssertGCCallback inCallback; -- MOZ_ASSERT(mFlatJSObject == old); -+ MOZ_ASSERT(mFlatJSObject.unbarrieredGetPtr() == old); - - nsWrapperCache* cache = nullptr; - CallQueryInterface(mIdentity, &cache); -diff -up firefox-56.0/js/xpconnect/src/XPCWrappedNativeProto.cpp.1337988 firefox-56.0/js/xpconnect/src/XPCWrappedNativeProto.cpp ---- firefox-56.0/js/xpconnect/src/XPCWrappedNativeProto.cpp.1337988 2017-07-31 18:20:47.000000000 +0200 -+++ firefox-56.0/js/xpconnect/src/XPCWrappedNativeProto.cpp 2017-09-25 10:34:11.207611692 +0200 -@@ -101,7 +101,7 @@ XPCWrappedNativeProto::CallPostCreatePro - void - XPCWrappedNativeProto::JSProtoObjectFinalized(js::FreeOp* fop, JSObject* obj) - { -- MOZ_ASSERT(obj == mJSProtoObject, "huh?"); -+ MOZ_ASSERT(obj == mJSProtoObject.unbarrieredGet(), "huh?"); - - #ifdef DEBUG - // Check that this object has already been swept from the map. -@@ -117,7 +117,7 @@ XPCWrappedNativeProto::JSProtoObjectFina - void - XPCWrappedNativeProto::JSProtoObjectMoved(JSObject* obj, const JSObject* old) - { -- MOZ_ASSERT(mJSProtoObject == old); -+ MOZ_ASSERT(mJSProtoObject.unbarrieredGet() == old); - mJSProtoObject.init(obj); // Update without triggering barriers. - } - diff --git a/mozilla-1580174-webrtc-popup.patch b/mozilla-1580174-webrtc-popup.patch deleted file mode 100644 index 2d154eb..0000000 --- a/mozilla-1580174-webrtc-popup.patch +++ /dev/null @@ -1,51 +0,0 @@ -diff --git a/widget/gtk/nsWindow.cpp b/widget/gtk/nsWindow.cpp ---- a/widget/gtk/nsWindow.cpp -+++ b/widget/gtk/nsWindow.cpp -@@ -1155,6 +1155,28 @@ - } - } - -+bool IsPopupWithoutToplevelParent(nsMenuPopupFrame* aMenuPopupFrame) { -+ // Check if the popup is autocomplete (like tags autocomplete -+ // in the bookmark edit popup). -+ nsAtom* popupId = aMenuPopupFrame->GetContent()->GetID(); -+ if (popupId && popupId->Equals(NS_LITERAL_STRING("PopupAutoComplete"))) { -+ return true; -+ } -+ -+ // Check if the popup is in popupnotificationcontent (like choosing capture -+ // device when starting webrtc session). -+ nsIFrame* parentFrame = aMenuPopupFrame->GetParent(); -+ if (!parentFrame) { -+ return false; -+ } -+ parentFrame = parentFrame->GetParent(); -+ if (parentFrame && parentFrame->GetContent()->NodeName().EqualsLiteral( -+ "popupnotificationcontent")) { -+ return true; -+ } -+ return false; -+} -+ - // Wayland keeps strong popup window hierarchy. We need to track active - // (visible) popup windows and make sure we hide popup on the same level - // before we open another one on that level. It means that every open -@@ -1211,10 +1233,14 @@ - LOG(("...[%p] GetParentMenuWidget() = %p\n", (void*)this, parentWindow)); - - // If the popup is a regular menu but GetParentMenuWidget() returns -- // nullptr which means it's connected non-menu parent -- // (bookmark toolbar for instance). -+ // nullptr which means is not a submenu of any other menu. - // In this case use a parent given at nsWindow::Create(). -- if (!parentWindow && !menuPopupFrame->IsContextMenu()) { -+ // But we have to avoid using mToplevelParentWindow in case the popup -+ // is in 'popupnotificationcontent' element or autocomplete popup, -+ // otherwise the popupnotification would disappear when for -+ // example opening a popup with microphone selection. -+ if (!parentWindow && !menuPopupFrame->IsContextMenu() && -+ !IsPopupWithoutToplevelParent(menuPopupFrame)) { - parentWindow = - get_window_for_gtk_widget(GTK_WIDGET(mToplevelParentWindow)); - } - diff --git a/mp4parse-rust-8b5b652d38e007e736bb442ccd5aa5ed699db100.patch b/mp4parse-rust-8b5b652d38e007e736bb442ccd5aa5ed699db100.patch deleted file mode 100644 index bdad203..0000000 --- a/mp4parse-rust-8b5b652d38e007e736bb442ccd5aa5ed699db100.patch +++ /dev/null @@ -1,25 +0,0 @@ ---- thunderbird-102.11.1/third_party/rust/mp4parse/.cargo-checksum.json.mp4parse-rust-8b5b652d38e007e736bb442ccd5aa5ed699db100 2023-05-24 00:50:52.000000000 +0200 -+++ thunderbird-102.11.1/third_party/rust/mp4parse/.cargo-checksum.json 2023-06-08 15:26:57.584198289 +0200 -@@ -1 +1 @@ --{"files":{"Cargo.toml":"f283fc1597f492cd1e03cd08b9c77f042ae4494fc96b4dcb566ec0abbda65efc","LICENSE":"fab3dd6bdab226f1c08630b1dd917e11fcb4ec5e1e020e2c16f83a0a13863e85","README.md":"86cb40854b93f988e3a63ce6fe39d2ce95367f8ca301a5ba50676ff98a0ad791","benches/avif_benchmark.rs":"cd99c0dde025ab40d2cd860f53dc697a1587a48c164c3e5c8adfd40add29d772","link-u-avif-sample-images/.github/workflows/encode-and-decode-daily.yml":"84b787f721024a100ce09ac5714a1d78a4811893861e89495313f435b9d02359","link-u-avif-sample-images/.gitignore":"ac16d40779ab2d608843a3cb1b0418a1ffdc0e71a06c4d140386fadf007a54a7","link-u-avif-sample-images/LICENSE.txt":"da89f9867822be4b8adb1e601d9e9226c195016c6508015eb7593e68ead0c98a","link-u-avif-sample-images/Makefile":"b5697e8685d2a9ce0f4b4c976a5f707022ed113782d16dc59ae280d3a8ce77b1","link-u-avif-sample-images/README.md":"d249fb7bef4f21359cfc4f2977e1b2f2c6e6dd6e57cb1cdc1da1f0edd8aa55d0","link-u-avif-sample-images/fox.jpg":"927997a90ae88ead007283bf9c1392159d0acd2e9890522146211fda2112a2d9","link-u-avif-sample-images/fox.odd-height.png":"6136247772bd1c0edd50426bca4f3485473ac25a784e5ec8777f7491598e96db","link-u-avif-sample-images/fox.odd-width.odd-height.png":"6f91dc21c137f318d0443ce28bbf3f74d5502180c254327b46e41040a33f1363","link-u-avif-sample-images/fox.odd-width.png":"a8b2328c8700c16280c5ab40a34147edac598d4d48ca101bef649e468ae1492e","link-u-avif-sample-images/fox.png":"c45bfb5780843c70a37426340020e3e7ff41d7cf1df9fec614a5cf429d078573","link-u-avif-sample-images/fox.profile0.10bpc.yuv420.avif":"811af5e96631309030a14cbc30c3bacfaa667f2e36e16a4f30434b8f5a23310c","link-u-avif-sample-images/fox.profile0.10bpc.yuv420.monochrome.avif":"e35713343e9ee04c51ab9cfdc99a0c7d126a1917cb83f5b9a23c71ed59269be2","link-u-avif-sample-images/fox.profile0.10bpc.yuv420.monochrome.odd-height.avif":"485623f7838d8f442c47348c6492765e6aafbc3d5ccd8e90efc9c812ff15e265","link-u-avif-sample-images/fox.profile0.10bpc.yuv420.monochrome.odd-width.avif":"8e75b9a8975267359d827e4cbc6877b1674aa31b87f88f222dde03263f9254df","link-u-avif-sample-images/fox.profile0.10bpc.yuv420.monochrome.odd-width.odd-height.avif":"1fff5915a332d6aaa85d668f3f338bda6fad9c6ec1f380f2c46737d536cea5de","link-u-avif-sample-images/fox.profile0.10bpc.yuv420.odd-height.avif":"cca9785f14c74d865453518c0962dabd6d1b92d2c6c5f5ac67efdbf5606acb83","link-u-avif-sample-images/fox.profile0.10bpc.yuv420.odd-width.avif":"de3399d8b56431f0ed34e2f14200f31dd54544fddbb12f39b4d55449d5660c56","link-u-avif-sample-images/fox.profile0.10bpc.yuv420.odd-width.odd-height.avif":"07507744cb76b74a3586b93fc3b273a98f998d75f7687db3e9cb3725d7b1fb9d","link-u-avif-sample-images/fox.profile0.8bpc.yuv420.avif":"cb884c82ac7b6d4fa03b1f687e9e20abc346107095473e9c1d422aaf0de14eaf","link-u-avif-sample-images/fox.profile0.8bpc.yuv420.monochrome.avif":"15d84077066c47fdbe2a7b8ed583a17017d09a033144ac1b31486d6c8f6f5c82","link-u-avif-sample-images/fox.profile0.8bpc.yuv420.monochrome.odd-height.avif":"365439d2ee2fe5229e066362c03a73a182c7f6626772ecf5345b22752d32e681","link-u-avif-sample-images/fox.profile0.8bpc.yuv420.monochrome.odd-width.avif":"c623b9943123d6c47d3300444f7255cbdfebfe2b47a670287f2baeb717fac42b","link-u-avif-sample-images/fox.profile0.8bpc.yuv420.monochrome.odd-width.odd-height.avif":"dd069f3c3c4f7589f5f7ef1d7b6a91b8cb975d32663a4a92b6d75219edd72954","link-u-avif-sample-images/fox.profile0.8bpc.yuv420.odd-height.avif":"75628450288ace3386651725411c8f0ffff7eb95f82c5307b0faa3350f09f50e","link-u-avif-sample-images/fox.profile0.8bpc.yuv420.odd-width.avif":"f91b6f455412adabc5094011362eaaa1f6a9d5740de0b8a1be42a96c16e7617f","link-u-avif-sample-images/fox.profile0.8bpc.yuv420.odd-width.odd-height.avif":"bb8695cacacaf8f2e13a739de75e5e8a9d970d68c3acdfb7d82171a9bac2f01e","link-u-avif-sample-images/fox.profile1.10bpc.yuv444.avif":"a10de8204aee73ba1786daca6390546bd7aa6b069aaa644012219a1c11246a43","link-u-avif-sample-images/fox.profile1.10bpc.yuv444.odd-height.avif":"734a5badc59a8bed19e8eb476911048ddb011ca7c9eac31b7a7ed20e0135ac2c","link-u-avif-sample-images/fox.profile1.10bpc.yuv444.odd-width.avif":"68d15d76d95f268e810dfd87bbf96d8c3197580afce2d30b50bb1f07865077f3","link-u-avif-sample-images/fox.profile1.10bpc.yuv444.odd-width.odd-height.avif":"01e469b33bacb7e07e15e23b2997907bbcf02d8fcc99885a027494d31c45547c","link-u-avif-sample-images/fox.profile1.8bpc.yuv444.avif":"a0cdc981a6b056c8af2d177a1438c332d630040dacbfd1c89bb5e3e381ba5822","link-u-avif-sample-images/fox.profile1.8bpc.yuv444.odd-height.avif":"77e0510def73213c00ebcf051cf45fa63cf27d7c69340cc145ab6d44ec77bb07","link-u-avif-sample-images/fox.profile1.8bpc.yuv444.odd-width.avif":"12787042364bd13be01830f988cb714220bde340a3329baa808df27a269b83f8","link-u-avif-sample-images/fox.profile1.8bpc.yuv444.odd-width.odd-height.avif":"fad3b6dd9cb99e6925858f69aafae3f68c861845f2c3d4a6d1c51c6161490134","link-u-avif-sample-images/fox.profile2.10bpc.yuv422.avif":"e34f3bab5df802be2d422c685824464eb5f7e182b235ca99bde11c4c34ff3ac2","link-u-avif-sample-images/fox.profile2.10bpc.yuv422.monochrome.avif":"05804752621e2fd7a9d85b01e2995a50e3efd30693efd934152560622d66e841","link-u-avif-sample-images/fox.profile2.10bpc.yuv422.monochrome.odd-height.avif":"ef041f2efa0424d3a6dcfc5f0c3f619aea0e197aaeb5a050a2d877a457513921","link-u-avif-sample-images/fox.profile2.10bpc.yuv422.monochrome.odd-width.avif":"b711b321b8a4d3a41e08f80a17c2203b839458cb6346aff6fff3f8d7699032e6","link-u-avif-sample-images/fox.profile2.10bpc.yuv422.monochrome.odd-width.odd-height.avif":"e3f40aad0ddd6c04ffacf4a754a0525986c89d519119d37655282551e3ea3a59","link-u-avif-sample-images/fox.profile2.10bpc.yuv422.odd-height.avif":"4ef74c37712b41d6e5269d939f9d52031bc10746f7c8c029db618c5935aff9a6","link-u-avif-sample-images/fox.profile2.10bpc.yuv422.odd-width.avif":"4cf6c849f4a48a639217ad9a1e0d027f4fc804d524c03e6707ec9714a252532f","link-u-avif-sample-images/fox.profile2.10bpc.yuv422.odd-width.odd-height.avif":"3d3978e8e8d07270f82a877d3535f9483b88fce93a1c4accb658b494452b1d36","link-u-avif-sample-images/fox.profile2.12bpc.yuv420.avif":"626d73272e59722084c528b27b72a0920bec462a10749b3e87036e42bf8a24e5","link-u-avif-sample-images/fox.profile2.12bpc.yuv420.monochrome.avif":"caf50c467242b3fa0b895a2af131fa0d03dd7b34989f2b1a51d25b2246c98fab","link-u-avif-sample-images/fox.profile2.12bpc.yuv420.monochrome.odd-height.avif":"1e88b92df592c02af53ff5258fa898ac8fe1d71954e9a440500ef7879b8a1c46","link-u-avif-sample-images/fox.profile2.12bpc.yuv420.monochrome.odd-width.avif":"466efdd269f3be3b1c88afc093c839e50ba5eaf6bd0c2425e157000d02a3c21a","link-u-avif-sample-images/fox.profile2.12bpc.yuv420.monochrome.odd-width.odd-height.avif":"36014509d0688cb307e0ffcdb5b4c16ff6e6c79772c7fbbeea33b4d483a1566f","link-u-avif-sample-images/fox.profile2.12bpc.yuv420.odd-height.avif":"d1786723a5d6ea1e1764b0045dc3f669fe3905ffc2913011a2b1b424d2393397","link-u-avif-sample-images/fox.profile2.12bpc.yuv420.odd-width.avif":"a2d9178cc5622e28472a735650d9c4deaec6d27d69830110911f4158f9d4a04e","link-u-avif-sample-images/fox.profile2.12bpc.yuv420.odd-width.odd-height.avif":"89a9fc7598d72251b903e0c7088ab3e7a7f316b5e02b85f8c69e51f8eb0c7e69","link-u-avif-sample-images/fox.profile2.12bpc.yuv422.avif":"51476b8471e1c0a5ebbd1e7545709495bef619cc96c02d277aad32b1deff8ea9","link-u-avif-sample-images/fox.profile2.12bpc.yuv422.monochrome.avif":"caf50c467242b3fa0b895a2af131fa0d03dd7b34989f2b1a51d25b2246c98fab","link-u-avif-sample-images/fox.profile2.12bpc.yuv422.monochrome.odd-height.avif":"1e88b92df592c02af53ff5258fa898ac8fe1d71954e9a440500ef7879b8a1c46","link-u-avif-sample-images/fox.profile2.12bpc.yuv422.monochrome.odd-width.avif":"466efdd269f3be3b1c88afc093c839e50ba5eaf6bd0c2425e157000d02a3c21a","link-u-avif-sample-images/fox.profile2.12bpc.yuv422.monochrome.odd-width.odd-height.avif":"36014509d0688cb307e0ffcdb5b4c16ff6e6c79772c7fbbeea33b4d483a1566f","link-u-avif-sample-images/fox.profile2.12bpc.yuv422.odd-height.avif":"4808960cdcd1207b29eb6ef5b4db81ae5e63c5d40ef92f7a1e8f4430e765bde4","link-u-avif-sample-images/fox.profile2.12bpc.yuv422.odd-width.avif":"71f3c73737bc04c23d93ea2c61a8a07408f604192fe53fe12c65050927dacb4e","link-u-avif-sample-images/fox.profile2.12bpc.yuv422.odd-width.odd-height.avif":"8f9649384fa09c70af0c2e9e0d94ecd17492c702e015d9d6290d3aefc57c548c","link-u-avif-sample-images/fox.profile2.12bpc.yuv444.avif":"ed96eca6ed79863eaf91e4d666e4e220b5fa4e5a6cb1696477ba901ac12f5dde","link-u-avif-sample-images/fox.profile2.12bpc.yuv444.monochrome.avif":"caf50c467242b3fa0b895a2af131fa0d03dd7b34989f2b1a51d25b2246c98fab","link-u-avif-sample-images/fox.profile2.12bpc.yuv444.monochrome.odd-height.avif":"1e88b92df592c02af53ff5258fa898ac8fe1d71954e9a440500ef7879b8a1c46","link-u-avif-sample-images/fox.profile2.12bpc.yuv444.monochrome.odd-width.avif":"466efdd269f3be3b1c88afc093c839e50ba5eaf6bd0c2425e157000d02a3c21a","link-u-avif-sample-images/fox.profile2.12bpc.yuv444.monochrome.odd-width.odd-height.avif":"36014509d0688cb307e0ffcdb5b4c16ff6e6c79772c7fbbeea33b4d483a1566f","link-u-avif-sample-images/fox.profile2.12bpc.yuv444.odd-height.avif":"c43b4c607e301e34eb953770133d89d15e77d63be8d6421a80d6212fbbbf3453","link-u-avif-sample-images/fox.profile2.12bpc.yuv444.odd-width.avif":"0e6218ce250ee7f84a621f3af73286fd4dabea19e9898d3575c20c5955aa427d","link-u-avif-sample-images/fox.profile2.12bpc.yuv444.odd-width.odd-height.avif":"9f19846d884ac7d161ac2ca15811bb22ff7f3847bc1ad5d7713971ea024631aa","link-u-avif-sample-images/fox.profile2.8bpc.yuv422.avif":"2cb363d30f83bff58ee049874b1808b37cb1d35342edf16b3ce25cb243c9ea55","link-u-avif-sample-images/fox.profile2.8bpc.yuv422.monochrome.avif":"8217b88f350c5d3812d7f863fe9d710c4c1b846b0be8df29ce6b3eb30d2b8d8f","link-u-avif-sample-images/fox.profile2.8bpc.yuv422.monochrome.odd-height.avif":"51eccd8c1368ddec9bc1f3a7631dadb00682e985fbfea66c0a2f533f6a73b67e","link-u-avif-sample-images/fox.profile2.8bpc.yuv422.monochrome.odd-width.avif":"83fe4593ab839cf296a2ccb8a146daf826d1d602f4f239cb63ee020f2cc326f6","link-u-avif-sample-images/fox.profile2.8bpc.yuv422.monochrome.odd-width.odd-height.avif":"4e63b84a980a81adde586314a94d8f834ec763749d8797c286471415b6b75647","link-u-avif-sample-images/fox.profile2.8bpc.yuv422.odd-height.avif":"efc70882aacbb533c0e833a4401949d152dceb364846442cdccca5048ad17a60","link-u-avif-sample-images/fox.profile2.8bpc.yuv422.odd-width.avif":"c07575c88ef400c1725c9260a19439e0e784da41c7db3867059019ddbdb3bebe","link-u-avif-sample-images/fox.profile2.8bpc.yuv422.odd-width.odd-height.avif":"86aee64fd7b11b9834537ea14b2eff234c062c98d32fab51ff14aba262d5b106","link-u-avif-sample-images/hato.16bpc.png":"53b550c587cd1d19a1997184e47f4a3ff2a05cedf7cb4e42a9466a6d6cb60d8d","link-u-avif-sample-images/hato.jpg":"6d4804e5e4adf36a6b138544c81b743ed7abdd9a495a43e883ec77689ca28943","link-u-avif-sample-images/hato.png":"313880f4cc51160fec522d78f1fb7f06df70fe1929a731fc86c68ecefd312277","link-u-avif-sample-images/hato.profile0.10bpc.yuv420.avif":"1e84598c94bc795c55a551bdf6f283b4eed4997bda15e5c4bb2e29d0dc70897b","link-u-avif-sample-images/hato.profile0.10bpc.yuv420.monochrome.avif":"25c19a187d10eac963bb51b3fae1ffe50f3ccbc7ad02e51948dc7467b397ce61","link-u-avif-sample-images/hato.profile0.8bpc.yuv420.avif":"07cd454de19dd638354f75d9e97aab08bc8a04dd45c4f7531cb62a1a5656c8c9","link-u-avif-sample-images/hato.profile0.8bpc.yuv420.monochrome.avif":"120a3f26f3d6cde80869fb52bdb8fdd55b443882c98070ea938575e4790982ff","link-u-avif-sample-images/hato.profile2.10bpc.yuv422.avif":"d54251d4bc023f2e53624a46cb18e56cbc45768bd1bd50394de191c2a42106e8","link-u-avif-sample-images/hato.profile2.10bpc.yuv422.monochrome.avif":"ed33dfdb5e663b3394298b6921f9b19b129e14788dead776430eee2f14780a73","link-u-avif-sample-images/hato.profile2.12bpc.yuv422.avif":"ad361ac7d94fbc6af7ef30cbd3601ff366bc360c304480387a58a4c6fecee9b6","link-u-avif-sample-images/hato.profile2.12bpc.yuv422.monochrome.avif":"e28b4cacda95750e465e205fbfcba6a6af1d8418dac649838730c555ff7d828f","link-u-avif-sample-images/hato.profile2.8bpc.yuv422.avif":"69c353c482c2eb3d3671bb55f7ccfc932e4d781c714a72116e9138ffc6f6c720","link-u-avif-sample-images/hato.profile2.8bpc.yuv422.monochrome.avif":"e7d6f7d42a8519e1482f225fe447b5642d19a54ee830529223eac114a0dec189","link-u-avif-sample-images/images.html":"9e18453dfe5b205600f158282c6896265281e3b04b2fbc332804fab1dbdb3faf","link-u-avif-sample-images/kimono.avif":"63412e0f67f37c8b6fcf0e8269a2afae0a017fa6a3a99d37d055c590b0be52d3","link-u-avif-sample-images/kimono.crop.avif":"f175dcd9c64813b759da185fa67076fb772b76059845b2aad3ddcfab257f75ad","link-u-avif-sample-images/kimono.crop.png":"0d5605bae0ec9d39aad9dc8e1a371d0327c6a224643983e3ee1f4d44cb00f19d","link-u-avif-sample-images/kimono.jpg":"a6ad58e3cea437ee0c841115ba67ae7354de7af734de50de9d0853dd4e571577","link-u-avif-sample-images/kimono.mirror-horizontal.avif":"2bbc004d91145488610158a5acdb4d706495a2b15511db20ff57bb9efd80885c","link-u-avif-sample-images/kimono.mirror-horizontal.png":"9af9e839fe6bf6342831970c20291f619570d2fc687951ae00cd81ea766f53fe","link-u-avif-sample-images/kimono.mirror-vertical.avif":"f10eb04791fcca3409868b367128649f32e6b6fffcf02484cdefa57909f6bb74","link-u-avif-sample-images/kimono.mirror-vertical.png":"4ed003c5868fd2e78c7b2dcbd54a67a0e7593dabb3ac82b1c9e5e2dbdf09b8ec","link-u-avif-sample-images/kimono.mirror-vertical.rotate270.avif":"33c36ec2274b00ac6f81c9f61e55c20cbfce1649ad27520afe635310f516ead1","link-u-avif-sample-images/kimono.mirror-vertical.rotate270.crop.avif":"90ca48f657455b8f8e4a4e1769a05af90a3e34dca11a8b3c32552daf378ee956","link-u-avif-sample-images/kimono.mirror-vertical.rotate270.png":"74b9b7ffa8955761f747a0e6e81d5b7ecb5e325383546110e1b6aa9986728035","link-u-avif-sample-images/kimono.png":"84fd6cfb97a27739608e21779f874b4ae7e80342b2588e8b0b092dee2d57c881","link-u-avif-sample-images/kimono.rotate270.avif":"79a99a0415276cc11f2e871d070a9df84df3385888a2f2fa3534320f6bed98ed","link-u-avif-sample-images/kimono.rotate270.png":"1918a47c02b378945a705301abd4250ddc65bb95afce9424572ffd0fdd1f45ef","link-u-avif-sample-images/kimono.rotate90.avif":"bd1157d8c840713c82b907b9d3ae80bc3817849e11c323d875f8016e035bd3cc","link-u-avif-sample-images/kimono.rotate90.png":"1a73c61692abe96d0a7a9accdb36a83d51bceac79bbb83a00571570f494cca49","link-u-avif-sample-images/plum-blossom-large.png":"af6ea005b726ca39f342e946aa53bed88e5a140413ce896d166bb35ab0aa3b4f","link-u-avif-sample-images/plum-blossom-large.profile0.10bpc.yuv420.alpha-full.avif":"cf8e15ec4b210235f3d68332a1adeb64e35c41b8d8e1e7586ae38b6d9cd8926c","link-u-avif-sample-images/plum-blossom-large.profile0.10bpc.yuv420.alpha-full.monochrome.avif":"b413440309d5669a7aefa06f291f72de0d0c09972e3da9a385e6016d6a1c5562","link-u-avif-sample-images/plum-blossom-large.profile0.10bpc.yuv420.alpha-limited.avif":"64f6f2b1fda594af5c9e2d6e4bc752b55e8121000cdcedc0066018e53f76de40","link-u-avif-sample-images/plum-blossom-large.profile0.10bpc.yuv420.alpha-limited.monochrome.avif":"2b175a600aed64c1c1de4b2d661fb405437b1ff000b964d4be6ac437ce73136f","link-u-avif-sample-images/plum-blossom-large.profile0.8bpc.yuv420.alpha-full.avif":"21ebb3732186bf7c6c13cf7197155b64201e674b9c79cf613b6e5718bde14c2a","link-u-avif-sample-images/plum-blossom-large.profile0.8bpc.yuv420.alpha-full.monochrome.avif":"65917797e511c9033b3e225eb5d84f3c0440b7a496d4b8ab5674e123ad68aab7","link-u-avif-sample-images/plum-blossom-large.profile0.8bpc.yuv420.alpha-limited.avif":"f4809df9188fa46ed100f63c78c4cf42559d90a98351a8f69e177385920672b4","link-u-avif-sample-images/plum-blossom-large.profile0.8bpc.yuv420.alpha-limited.monochrome.avif":"dffc213dc36f0b5ff3d86254f5185c2d1fb03380918a8fa39d186fb59cbba7cc","link-u-avif-sample-images/plum-blossom-large.profile1.10bpc.yuv444.alpha-full.avif":"0a615cfb673ab45e37da3582c17dd36f86d5da3d81246a32951d1db4ed90149d","link-u-avif-sample-images/plum-blossom-large.profile1.10bpc.yuv444.alpha-limited.avif":"d1cc6a0db116a68e229676b289e8ced84d42a9f0e8d3ccd760fc92dbeb932547","link-u-avif-sample-images/plum-blossom-large.profile1.8bpc.yuv444.alpha-full.avif":"8626cf0b2c60fee51cf1df7fe4d8a18081b72e3604f7d3ff14cc5a35581927d9","link-u-avif-sample-images/plum-blossom-large.profile1.8bpc.yuv444.alpha-limited.avif":"56bf18e4bcbfbea460c306ab900fc506169854d2b91690e1a48156a86fff3264","link-u-avif-sample-images/plum-blossom-large.profile2.10bpc.yuv422.alpha-full.avif":"b56f3c33797e4c5bb80418ae25f6f2c6fc88ddc1f6965d82abc44059f052f36c","link-u-avif-sample-images/plum-blossom-large.profile2.10bpc.yuv422.alpha-full.monochrome.avif":"c3c6db4ce801c68e2afd7bfb72abacc13287cc2e247917a817ff5632bd4b18fb","link-u-avif-sample-images/plum-blossom-large.profile2.10bpc.yuv422.alpha-limited.avif":"095f57fff1dc037a6414c60263415dcfa86b10d81f58e8e4c3aef17cffae0e5f","link-u-avif-sample-images/plum-blossom-large.profile2.10bpc.yuv422.alpha-limited.monochrome.avif":"ba3035a69296d12f47d1c450f2de8cc0c9059ebbf27bb8b0996ff6d1ab1132a1","link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv420.alpha-full.avif":"a9551e1963049b874216b40aaf9be45bc44dc11887770712b77240862c6c08a9","link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv420.alpha-full.monochrome.avif":"a8a0ba881cd0aef45a5874f412e97812ca457eaf12e56b34bac2ba051e142828","link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv420.alpha-limited.avif":"6891b5bdbed7f541c673c66cec4584b191bb737a49b37cca16ae069830890b42","link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv420.alpha-limited.monochrome.avif":"67e66826637e349e1c3c46316c7048d152aed8453d8cdd00c6b786f87fe176d8","link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv422.alpha-full.avif":"a466503110f60dcadaafe78c2cb0a8ca58334c22868efe428c7ac12b69407c95","link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv422.alpha-full.monochrome.avif":"a8a0ba881cd0aef45a5874f412e97812ca457eaf12e56b34bac2ba051e142828","link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv422.alpha-limited.avif":"061b4c70707e7fc8866580656cca7ca2da2263645829a564dbf8f205d639f058","link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv422.alpha-limited.monochrome.avif":"67e66826637e349e1c3c46316c7048d152aed8453d8cdd00c6b786f87fe176d8","link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv444.alpha-full.avif":"4a03c8bcfcaadccdeb07432ed80680b06aba5ae5e616fc370b376acb478f6cd1","link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv444.alpha-full.monochrome.avif":"a8a0ba881cd0aef45a5874f412e97812ca457eaf12e56b34bac2ba051e142828","link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv444.alpha-limited.avif":"376625ce4e7ec3b57344a9f2185a34975fe380774c9f8e0dd4ef61c46da94fca","link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv444.alpha-limited.monochrome.avif":"67e66826637e349e1c3c46316c7048d152aed8453d8cdd00c6b786f87fe176d8","link-u-avif-sample-images/plum-blossom-large.profile2.8bpc.yuv422.alpha-full.avif":"1e17b7dd8e351cb667bc6ec0b81fdebca9fd30ad5e588b3eac57bf9f90a9b58b","link-u-avif-sample-images/plum-blossom-large.profile2.8bpc.yuv422.alpha-full.monochrome.avif":"f77588d2ff39e4461869a95ca236efdf4a3fdc17b8a6e3907e63b417e56c81b5","link-u-avif-sample-images/plum-blossom-large.profile2.8bpc.yuv422.alpha-limited.avif":"f2eabd3fc2db07b361d55b5af63023d28b5bdd0047a665e9d0685651ce9db94b","link-u-avif-sample-images/plum-blossom-large.profile2.8bpc.yuv422.alpha-limited.monochrome.avif":"dd88c377b253d689bfd4600d7c3007448df0ed92f679b661d5d51e051a6916d8","link-u-avif-sample-images/plum-blossom-small.png":"c859fd97b647e494461f65835b9c1c3476807aee77076599adf18a832b3617a4","link-u-avif-sample-images/plum-blossom-small.profile0.10bpc.yuv420.alpha-full.avif":"fe3379620f983e5da4210b0f7c5d164e86208b34106d6b11d56e2b52beee5dfe","link-u-avif-sample-images/plum-blossom-small.profile0.10bpc.yuv420.alpha-full.monochrome.avif":"9e6234686053dba2e44bb32192c641074095a61e45aa1bede85bb83751e6e157","link-u-avif-sample-images/plum-blossom-small.profile0.10bpc.yuv420.alpha-limited.avif":"60ffa59dd007aea3bb596cfb03853b3dad490b1ffd10471ad4fe1901ec819907","link-u-avif-sample-images/plum-blossom-small.profile0.10bpc.yuv420.alpha-limited.monochrome.avif":"58abfa027525aca7339a705f311bc30b000aef9822c7c50b232894ece1ba9cb1","link-u-avif-sample-images/plum-blossom-small.profile0.8bpc.yuv420.alpha-full.avif":"541ca66a11b1430d11f77b74a13f859239a3bd9f44976b8dfe163c5d7595a69f","link-u-avif-sample-images/plum-blossom-small.profile0.8bpc.yuv420.alpha-full.monochrome.avif":"6d7852c63c27a77bef94443e178ecf6b6a3da8cc846f9f0c1adc17f7fc35e1f3","link-u-avif-sample-images/plum-blossom-small.profile0.8bpc.yuv420.alpha-limited.avif":"3712216ffc7edb95a976b68469ead533fda6fe9f3d2e8cb09cbdb0d01d9c094b","link-u-avif-sample-images/plum-blossom-small.profile0.8bpc.yuv420.alpha-limited.monochrome.avif":"59672af536b169ebf7e48129167dc91cb253925517c37db28b64539f7afba5d3","link-u-avif-sample-images/plum-blossom-small.profile1.10bpc.yuv444.alpha-full.avif":"561d5158425ad39425916a3be048b0202e82efef44cf1a9f711db57192d2ff01","link-u-avif-sample-images/plum-blossom-small.profile1.10bpc.yuv444.alpha-limited.avif":"88336f29457c1dc4ae0b754ef14b791de4d8c337f2b44d7960aafcca08a5586e","link-u-avif-sample-images/plum-blossom-small.profile1.8bpc.yuv444.alpha-full.avif":"245a3dad6371dc702f29eb7e9735f843b63c525da871859728bedbe5bb274985","link-u-avif-sample-images/plum-blossom-small.profile1.8bpc.yuv444.alpha-limited.avif":"490c216b5850c670f6088ee72c7fd906102b2dd0c8432c01a517b3328db27c75","link-u-avif-sample-images/plum-blossom-small.profile2.10bpc.yuv422.alpha-full.avif":"0d0bbbcb0c9ade1c827317a6409ce6ba25027b36da1b6752379a5f5d4c8af056","link-u-avif-sample-images/plum-blossom-small.profile2.10bpc.yuv422.alpha-full.monochrome.avif":"418a9d4b7dcbc1f67fc4b95ccb2e7946c446fddd35a79f0d587b3f2165cb3f14","link-u-avif-sample-images/plum-blossom-small.profile2.10bpc.yuv422.alpha-limited.avif":"a41dcfabb3795ed93a05881a91bf4d1c5d1b9b0e5d0db728f12684b12613e0c9","link-u-avif-sample-images/plum-blossom-small.profile2.10bpc.yuv422.alpha-limited.monochrome.avif":"4b6a18f4f608d1b00598e67c1c91a4e8f4943ae5acf0166ae0121cc21f3b7437","link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv420.alpha-full.avif":"5e6b83adee3aeac4bba3f38e854e2ed7585aa1557a74b5fa66596098c53e26f2","link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv420.alpha-full.monochrome.avif":"fb0937564c08f4e1c22ebbde426a0eff6a1d388434c30148bc7e5582dc378caa","link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv420.alpha-limited.avif":"f42e780bff644167e27525fee65b23e70814f7665ea19b6d693eb127c5eeebd8","link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv420.alpha-limited.monochrome.avif":"d41ead1d69d33d0cf5f6fe575beb5f60d9565300c535f9042113dd8a748c1d31","link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv422.alpha-full.avif":"c6ee9234ee7783d0203f9512e3cc8fe76a694675bcf03c320ff8bab4684bd4e9","link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv422.alpha-full.monochrome.avif":"fb0937564c08f4e1c22ebbde426a0eff6a1d388434c30148bc7e5582dc378caa","link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv422.alpha-limited.avif":"21e1e51fc6da66e090e12e1df5aeabf1f478df64bcb8151caaa687ad262bdd9d","link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv422.alpha-limited.monochrome.avif":"d41ead1d69d33d0cf5f6fe575beb5f60d9565300c535f9042113dd8a748c1d31","link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv444.alpha-full.avif":"dfed73d646d7159d3ee4f9ce95ea628fdd33bf8bf1bb02a83d88302d088f4d97","link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv444.alpha-full.monochrome.avif":"fb0937564c08f4e1c22ebbde426a0eff6a1d388434c30148bc7e5582dc378caa","link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv444.alpha-limited.avif":"5539cd575256772ba31d6e87cb0136d5f465f84b041a4677b1023cfd6bee9956","link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv444.alpha-limited.monochrome.avif":"d41ead1d69d33d0cf5f6fe575beb5f60d9565300c535f9042113dd8a748c1d31","link-u-avif-sample-images/plum-blossom-small.profile2.8bpc.yuv422.alpha-full.avif":"f205cf2c05265b84e45ceb723e9a3707fd8749130166d4797e64c8c62b497f8c","link-u-avif-sample-images/plum-blossom-small.profile2.8bpc.yuv422.alpha-full.monochrome.avif":"ad2244cb7b2ac487a5104d6e5a07270f9ceb2550e4d56d3662fcc1868910ced5","link-u-avif-sample-images/plum-blossom-small.profile2.8bpc.yuv422.alpha-limited.avif":"7ef9468effdc970e4e6e8cc7533d66dc967686e357dda3dda186c021f9e6156b","link-u-avif-sample-images/plum-blossom-small.profile2.8bpc.yuv422.alpha-limited.monochrome.avif":"3dd34d854ff83b6e27a2bf98301380a6cac272084ed863735285ab5dc8acda00","link-u-avif-sample-images/plum-blossom.svg":"be1f03dd05f63292c85a96b1c48fb06727283610cc69b1e116d547bab27b171d","link-u-avif-sample-images/red-at-12-oclock-with-color-profile-10bpc.avif":"5842951d81118d256962384e08a986816e8ade6b05530269f0208c6b69cedb3b","link-u-avif-sample-images/red-at-12-oclock-with-color-profile-12bpc.avif":"1f0c9f36d69b9aa13eff3897ada3e78b81099c613b329a402c27e09453e7e261","link-u-avif-sample-images/red-at-12-oclock-with-color-profile-8bpc.avif":"3e6f2f4016e66e3c94707eaa8373e6f582321e005964cd35b64bc183e1bf10ea","link-u-avif-sample-images/red-at-12-oclock-with-color-profile-lossy.avif":"79483242f2dca12c4ec18bd33ff8099216b3094fb55a26a909f046b2f9b4ce58","link-u-avif-sample-images/red-at-12-oclock-with-color-profile.jpg":"d56f809ea5eda74578af57e2f80b41856a1fe2ff436c741aa58757387af998bd","link-u-avif-sample-images/red-at-12-oclock-with-color-profile.png":"4eab95e358eb48e052c7b8c94d30a8c6cb1c9c3c2dfd9845240281dd5dd7b800","link-u-avif-sample-images/scripts/compare.sh":"0562689bcd40e9fc1322bf037d6f999aa4406a2229f19e74b96cc450e370e429","link-u-avif-sample-images/star-10bpc-with-alpha.avifs":"5643ac1f235ae6599186dd66c66507db6fa46a17b2b18e82ea9344870eb98a9b","link-u-avif-sample-images/star-10bpc.avifs":"c61d899a59dbd8c7b2f7bcfca9069a0e13ff1606899af227938a28502e6cbf88","link-u-avif-sample-images/star-12bpc-with-alpha.avifs":"88a350c3550ce36c1777fe7eb1e906c6829d3ed8b241aa1e0e46f1a4e2567c4b","link-u-avif-sample-images/star-12bpc.avifs":"c1a59db6f180208a3177d77c7f9ab08290e903c7bdaf929331b807a510f8c619","link-u-avif-sample-images/star-8bpc-with-alpha.avifs":"13a12908cb162a855cccc9221a5f9f736e8ea07902ffbdcf007f8fde5ed255f2","link-u-avif-sample-images/star-8bpc.avifs":"ae35b161de67a5afeb195ee401f369c34990f0ff8662f70ab4065bc6931f0a66","link-u-avif-sample-images/star.gif":"389cdd02efbdce4f0205cae6e91c1f64e34fa0ca1fe02351da1b37e16cbb642a","link-u-avif-sample-images/star.input.txt":"970163b942843618616f42233abe91d40fb68f6f5451860db259551711867b55","link-u-avif-sample-images/star.png":"18569167cf7ebd265ab6973d071d259aacfbb46c0408b7d4874c8cc9df9bb1ad","link-u-avif-sample-images/star.svg":"13089d0986b31b87919029fa69f2b68981af4023306bf0f79922f6772396008a","link-u-avif-sample-images/star180.png":"21bc11be2b51334fe4589634507612e7edce96d36e6a99219d029e440164e8b8","link-u-avif-sample-images/star270.png":"5c93f538dcdc70840b9925b4089083acc9c25e95265b3f3dea18d695451b441e","link-u-avif-sample-images/star90.png":"2defc5d21e70447653fec5dc14a697d9dd555d7a0c14e79cb2d9f80796a51a6d","src/boxes.rs":"270a3e3bf90279bfc83f95acadaba9611c25243280bca71dfa9c044d5441cf15","src/lib.rs":"73114a5c28472e77082ad259113ffafb418ed602c1741f26da3e10278b0bf93e","src/macros.rs":"76c840f9299797527fe71aa5b378ffb01312767372b45cc62deddb19775400ae","src/tests.rs":"75fe5467109242b2cc7991f8228e2e2ad1de5be2f29272a4a7f08c4e21ab5fa4","src/unstable.rs":"c2cef9a3b2b08a4da66fa0305fce7a117bd99c9b8d57b0a044e1d99dbda6faf5","tests/1x1-black-alpha-50pct-premultiplied.avif":"31a8c235bf2cf601a593a7bc33f7f2779f2d5b2e0cd145897b931fce94b0c0b8","tests/a1lx.avif":"81a784c568e7619bd47c4e7153181e9a86c8a03221097aa63979f97affd7efbb","tests/a1op.avif":"184e50efd3ad226800c610da7bc470d29b548d9fa942fd1fd1848ed02e2e5f0a","tests/alpha_video_avif_major_avis_compatible.avif":"81771981248c4e0d708f0828eadb20e9e37e7c21280efe5726666958f899c237","tests/alpha_video_fixed.avif":"67051d1a4ccf9f3e38d4514d8a6b3a2e07f1beb979369cabdc60881a698a36ac","tests/alpha_video_no_avis.avif":"a95f0e7c818bc5bf646143cf43474b70722e17669d4f2a32874c125936207d6a","tests/amr_nb_1f.3gp":"d1423e3414ad06b69f8b58d5c916ec353ba2d0402d99dec9f1c88acc33b6a127","tests/amr_wb_1f.3gp":"be635b24097e8757b0c04d70ab28e00417ca113e86108b6c269b79b64b89bcd5","tests/av1C-missing-essential.avif":"a1501254c4071847b2269fe40b81409c389ff14e91cf7c0005a47e6ea97a6803","tests/bad-ipma-flags.avif":"ecde7997b97db1910b9dcc7ca8e3c8957da0e83681ea9008c66dc9f12b78ad19","tests/bad-ipma-version.avif":"7f9a1a0b4ebbf8d800d22eaae5ff78970cc6b811317db6c1467c6883952b7c9b","tests/bbb_sunflower_QCIF_30fps_h263_noaudio_1f.3gp":"03e5b1264d0a188d77b9e676ba3ce23a801b17aaa11c0343dfd851d6ea4e3a40","tests/clap-basic-1_3x3-to-1x1.avif":"83af9c8196fa93b2475163585a23d0eb5a8f8015d0db8da7a5d6de61adfb1876","tests/clap-missing-essential.avif":"4d61aacd2327661a456abc76d3d490e5ddd2b6f8cbfa52922a6c541c9d983193","tests/clusterfuzz-testcase-minimized-mp4-6093954524250112":"af7044a470732d4e7e34ac7ab5ff038c58b66f09702cbcd774931d7766bbfd35","tests/corrupt/a1lx-marked-essential.avif":"0d481240222450827ea335ae9a1a300777a0db4f9b0f4c17ed77c758c5133fa3","tests/corrupt/a1op-missing-essential.avif":"33c24d54f43f1a7be7a8334718881c8a0de24730c997c7842b9d7140e75017ea","tests/corrupt/alpha_video_moov_is_moop.avif":"89e0091edd6efc2c5b163525553c5abc56263fe1b3b885184bb07b9ea4bf346d","tests/corrupt/bug-1655846.avif":"e0a5a06225800fadf05f5352503a4cec11af73eef705c43b4acab5f4a99dea50","tests/corrupt/bug-1661347.avif":"31c26561e1d9eafb60f7c5968b82a0859d203d73f17f26b29276256acee12966","tests/corrupt/clusterfuzz-testcase-minimized-avif-4914209301856256.avif":"34a142c7916e314881f3fb6394add1c543fac0e5b45109e3a425eeb4c68998d0","tests/corrupt/hdlr-not-first.avif":"2c29308af077209b9c984921b7e36f8fb7ca7cf379cf8eba4c7a91f65bc7a304","tests/corrupt/hdlr-not-pict.avif":"9fe37619606645a95725300a9e34fada9190d1e0b3919881db84353941ca9291","tests/corrupt/imir-before-clap.avif":"22d6b5dacf0ef0be59053beba7564b08037fed859ada2885e3476e0ff0d19c95","tests/corrupt/invalid-avif-colr-multiple-nclx.avif":"7990a995855120dc4f724a6098816595becc35077fcd9e0de8c68300b49c4f1f","tests/corrupt/invalid-avif-colr-multiple-prof.avif":"b077a6b58e3a13ad743ee3f19fbae53b521eab8727606e0dba9bf06384f3121c","tests/corrupt/invalid-avif-colr-multiple-rICC.avif":"88b24d4d588744b9f2cdc03944f28283e9315eb3de7d7d57773a0541137f6529","tests/corrupt/invalid-avif-colr-multiple.zip":"9abddcbc47fde6da20263a29b770c6a9e76c8ab8dc785ef8512f35d9cb3206ed","tests/corrupt/ipma-duplicate-item_id.avif":"ca8c5275b0b8b79c1068489a52d0a5c8f0b4453463971e72b694189f11c10745","tests/corrupt/ipma-duplicate-version-and-flags.avif":"cf8e15ec4b210235f3d68332a1adeb64e35c41b8d8e1e7586ae38b6d9cd8926c","tests/corrupt/ipma-invalid-property-index.avif":"2480e773fa716d22883032d05fd4cf2c6b00fba8796cf4ff286a5d1ba26adff6","tests/corrupt/lsel-missing-essential.avif":"43c3b1e4c4acecd7559a9a7197a7befd43c71705748f0f8c063bca3be1c6d074","tests/corrupt/no-alpha-av1C.avif":"ad3d34d6331db7d9bea0c5f37efb88923520e33e08e7c636a5df435a4575eae7","tests/corrupt/no-av1C.avif":"eeb4fc50930c91465999f787c4a2a3b12de20556da0857be72da5a1a9eaa3f01","tests/corrupt/no-ftyp.avif":"74b431f32b2e2761e77df7fdb260f623b4e8f7e3f4c8af8a42d6826911706d7b","tests/corrupt/no-hdlr.avif":"91a1eb70c7b6adf2104e471d7deeeb98084a591d64ce09ba106c27edfbc3a409","tests/corrupt/no-ispe.avif":"4b6edfd8c9b40c25dc40305a6057e32b5e65f40da4a9d810c58dbff53254113f","tests/corrupt/no-pitm.avif":"7960eeb9e6e5140fbe5eb6d281e6974efd6c3c0147562f3dcf06f6b009dc540a","tests/corrupt/no-pixi-for-alpha.avif":"f8adc3573c79ee25bf6d4dd2693c61661469b28f86a5c7b1d9e41b0e8d2d53bb","tests/corrupt/no-pixi.avif":"4b1776def440dc8b913c170e4479772ee6bbb299b8679f7c564704bd03c9597e","tests/hdlr-nonzero-reserved.avif":"b872dcd7b4f49c6808d6da109cf4fedc26a237c42e8529c5aa8f7130abaf40a9","tests/imir-missing-essential.avif":"b1226e4b1358528befbd3f1126b5caf0c5051b4354777b87e71f6001f3829f87","tests/invalid-avif-hdlr-name-multiple-nul.avif":"0d3e4a6ce42154ee288c18339c2b59ff2104fd890cd2d616e5dbf26375a90e98","tests/irot-missing-essential.avif":"b7da1fc1d1b45bb1b7ca3494476e052f711d794a6d010df6870872ed8b9da10e","tests/lsel.avif":"ef8ba6827709f48cd45f749efb580129162d9599ea98f3363d2140957502d806","tests/multiple-extents.avif":"b5549ac68793e155a726d754e565cea0da03fa17833d3545f45c79e13f4c9360","tests/no-mif1.avif":"1442aa6ffaeb9512724287768bfd1850d3aa29a651ef05abb33e5dec2b3ee5c2","tests/overflow.rs":"16b591d8def1a155b3b997622f6ea255536870d99c3d8f97c51755b77a50de3c","tests/public.rs":"8918d5190a36c697445aa4b140a31cd3032582f1e504b4c2527f75a2155f80ae","tests/valid-alpha.avif":"9d417a35b9b62ad3ff66ffbc55f16552aacf821a092aa5ef4adff7e746bd4c2f","tests/valid-avif-colr-nclx-and-prof-and-rICC.avif":"ab6f5e786d26f8bcade5993f8b9cca3cd004a3d7fcec76e829f5d0f98cb18e7b","tests/valid-avif-colr-nclx-and-prof.avif":"0e982818de61869fcb85a2a4c2b7b8aeecb3053cbfdc6276987f91204998eefb","tests/valid-avif-colr-nclx-and-rICC.avif":"8530ef1305ff956a0c2912d0b3d1e0fc3a68cf3103e70b04cc2574530389b030","tests/valid-avif-colr-nclx.avif":"345ab58b7b1cb48aba2e21eb8dc5ab0a751a78a752ce1896c59b4bf361992f38","tests/valid-avif-colr-prof-and-rICC.avif":"1f0f085141106885bda78b0879c768818420d8196b39440a36578456a7d50a6c","tests/valid-avif-colr-prof.avif":"5d7aaefb5204ebe1cc296456866b8e46e023748b921a38ee56fd6c776a9733ff","tests/valid-avif-colr-rICC.avif":"e1c7b49bfad5904b484bd5118e6b33b78e2dc708a31a10fcbb0e4a373ed8dbb7","tests/valid.avif":"f0b33e09bf01232e0877df325f47986c0bee7764f2a81c9c908ae109e7dc63c4"},"package":null} -\ No newline at end of file -+{"files":{"Cargo.toml":"f283fc1597f492cd1e03cd08b9c77f042ae4494fc96b4dcb566ec0abbda65efc","LICENSE":"fab3dd6bdab226f1c08630b1dd917e11fcb4ec5e1e020e2c16f83a0a13863e85","README.md":"86cb40854b93f988e3a63ce6fe39d2ce95367f8ca301a5ba50676ff98a0ad791","benches/avif_benchmark.rs":"cd99c0dde025ab40d2cd860f53dc697a1587a48c164c3e5c8adfd40add29d772","link-u-avif-sample-images/.github/workflows/encode-and-decode-daily.yml":"84b787f721024a100ce09ac5714a1d78a4811893861e89495313f435b9d02359","link-u-avif-sample-images/.gitignore":"ac16d40779ab2d608843a3cb1b0418a1ffdc0e71a06c4d140386fadf007a54a7","link-u-avif-sample-images/LICENSE.txt":"da89f9867822be4b8adb1e601d9e9226c195016c6508015eb7593e68ead0c98a","link-u-avif-sample-images/Makefile":"b5697e8685d2a9ce0f4b4c976a5f707022ed113782d16dc59ae280d3a8ce77b1","link-u-avif-sample-images/README.md":"d249fb7bef4f21359cfc4f2977e1b2f2c6e6dd6e57cb1cdc1da1f0edd8aa55d0","link-u-avif-sample-images/fox.jpg":"927997a90ae88ead007283bf9c1392159d0acd2e9890522146211fda2112a2d9","link-u-avif-sample-images/fox.odd-height.png":"6136247772bd1c0edd50426bca4f3485473ac25a784e5ec8777f7491598e96db","link-u-avif-sample-images/fox.odd-width.odd-height.png":"6f91dc21c137f318d0443ce28bbf3f74d5502180c254327b46e41040a33f1363","link-u-avif-sample-images/fox.odd-width.png":"a8b2328c8700c16280c5ab40a34147edac598d4d48ca101bef649e468ae1492e","link-u-avif-sample-images/fox.png":"c45bfb5780843c70a37426340020e3e7ff41d7cf1df9fec614a5cf429d078573","link-u-avif-sample-images/fox.profile0.10bpc.yuv420.avif":"811af5e96631309030a14cbc30c3bacfaa667f2e36e16a4f30434b8f5a23310c","link-u-avif-sample-images/fox.profile0.10bpc.yuv420.monochrome.avif":"e35713343e9ee04c51ab9cfdc99a0c7d126a1917cb83f5b9a23c71ed59269be2","link-u-avif-sample-images/fox.profile0.10bpc.yuv420.monochrome.odd-height.avif":"485623f7838d8f442c47348c6492765e6aafbc3d5ccd8e90efc9c812ff15e265","link-u-avif-sample-images/fox.profile0.10bpc.yuv420.monochrome.odd-width.avif":"8e75b9a8975267359d827e4cbc6877b1674aa31b87f88f222dde03263f9254df","link-u-avif-sample-images/fox.profile0.10bpc.yuv420.monochrome.odd-width.odd-height.avif":"1fff5915a332d6aaa85d668f3f338bda6fad9c6ec1f380f2c46737d536cea5de","link-u-avif-sample-images/fox.profile0.10bpc.yuv420.odd-height.avif":"cca9785f14c74d865453518c0962dabd6d1b92d2c6c5f5ac67efdbf5606acb83","link-u-avif-sample-images/fox.profile0.10bpc.yuv420.odd-width.avif":"de3399d8b56431f0ed34e2f14200f31dd54544fddbb12f39b4d55449d5660c56","link-u-avif-sample-images/fox.profile0.10bpc.yuv420.odd-width.odd-height.avif":"07507744cb76b74a3586b93fc3b273a98f998d75f7687db3e9cb3725d7b1fb9d","link-u-avif-sample-images/fox.profile0.8bpc.yuv420.avif":"cb884c82ac7b6d4fa03b1f687e9e20abc346107095473e9c1d422aaf0de14eaf","link-u-avif-sample-images/fox.profile0.8bpc.yuv420.monochrome.avif":"15d84077066c47fdbe2a7b8ed583a17017d09a033144ac1b31486d6c8f6f5c82","link-u-avif-sample-images/fox.profile0.8bpc.yuv420.monochrome.odd-height.avif":"365439d2ee2fe5229e066362c03a73a182c7f6626772ecf5345b22752d32e681","link-u-avif-sample-images/fox.profile0.8bpc.yuv420.monochrome.odd-width.avif":"c623b9943123d6c47d3300444f7255cbdfebfe2b47a670287f2baeb717fac42b","link-u-avif-sample-images/fox.profile0.8bpc.yuv420.monochrome.odd-width.odd-height.avif":"dd069f3c3c4f7589f5f7ef1d7b6a91b8cb975d32663a4a92b6d75219edd72954","link-u-avif-sample-images/fox.profile0.8bpc.yuv420.odd-height.avif":"75628450288ace3386651725411c8f0ffff7eb95f82c5307b0faa3350f09f50e","link-u-avif-sample-images/fox.profile0.8bpc.yuv420.odd-width.avif":"f91b6f455412adabc5094011362eaaa1f6a9d5740de0b8a1be42a96c16e7617f","link-u-avif-sample-images/fox.profile0.8bpc.yuv420.odd-width.odd-height.avif":"bb8695cacacaf8f2e13a739de75e5e8a9d970d68c3acdfb7d82171a9bac2f01e","link-u-avif-sample-images/fox.profile1.10bpc.yuv444.avif":"a10de8204aee73ba1786daca6390546bd7aa6b069aaa644012219a1c11246a43","link-u-avif-sample-images/fox.profile1.10bpc.yuv444.odd-height.avif":"734a5badc59a8bed19e8eb476911048ddb011ca7c9eac31b7a7ed20e0135ac2c","link-u-avif-sample-images/fox.profile1.10bpc.yuv444.odd-width.avif":"68d15d76d95f268e810dfd87bbf96d8c3197580afce2d30b50bb1f07865077f3","link-u-avif-sample-images/fox.profile1.10bpc.yuv444.odd-width.odd-height.avif":"01e469b33bacb7e07e15e23b2997907bbcf02d8fcc99885a027494d31c45547c","link-u-avif-sample-images/fox.profile1.8bpc.yuv444.avif":"a0cdc981a6b056c8af2d177a1438c332d630040dacbfd1c89bb5e3e381ba5822","link-u-avif-sample-images/fox.profile1.8bpc.yuv444.odd-height.avif":"77e0510def73213c00ebcf051cf45fa63cf27d7c69340cc145ab6d44ec77bb07","link-u-avif-sample-images/fox.profile1.8bpc.yuv444.odd-width.avif":"12787042364bd13be01830f988cb714220bde340a3329baa808df27a269b83f8","link-u-avif-sample-images/fox.profile1.8bpc.yuv444.odd-width.odd-height.avif":"fad3b6dd9cb99e6925858f69aafae3f68c861845f2c3d4a6d1c51c6161490134","link-u-avif-sample-images/fox.profile2.10bpc.yuv422.avif":"e34f3bab5df802be2d422c685824464eb5f7e182b235ca99bde11c4c34ff3ac2","link-u-avif-sample-images/fox.profile2.10bpc.yuv422.monochrome.avif":"05804752621e2fd7a9d85b01e2995a50e3efd30693efd934152560622d66e841","link-u-avif-sample-images/fox.profile2.10bpc.yuv422.monochrome.odd-height.avif":"ef041f2efa0424d3a6dcfc5f0c3f619aea0e197aaeb5a050a2d877a457513921","link-u-avif-sample-images/fox.profile2.10bpc.yuv422.monochrome.odd-width.avif":"b711b321b8a4d3a41e08f80a17c2203b839458cb6346aff6fff3f8d7699032e6","link-u-avif-sample-images/fox.profile2.10bpc.yuv422.monochrome.odd-width.odd-height.avif":"e3f40aad0ddd6c04ffacf4a754a0525986c89d519119d37655282551e3ea3a59","link-u-avif-sample-images/fox.profile2.10bpc.yuv422.odd-height.avif":"4ef74c37712b41d6e5269d939f9d52031bc10746f7c8c029db618c5935aff9a6","link-u-avif-sample-images/fox.profile2.10bpc.yuv422.odd-width.avif":"4cf6c849f4a48a639217ad9a1e0d027f4fc804d524c03e6707ec9714a252532f","link-u-avif-sample-images/fox.profile2.10bpc.yuv422.odd-width.odd-height.avif":"3d3978e8e8d07270f82a877d3535f9483b88fce93a1c4accb658b494452b1d36","link-u-avif-sample-images/fox.profile2.12bpc.yuv420.avif":"626d73272e59722084c528b27b72a0920bec462a10749b3e87036e42bf8a24e5","link-u-avif-sample-images/fox.profile2.12bpc.yuv420.monochrome.avif":"caf50c467242b3fa0b895a2af131fa0d03dd7b34989f2b1a51d25b2246c98fab","link-u-avif-sample-images/fox.profile2.12bpc.yuv420.monochrome.odd-height.avif":"1e88b92df592c02af53ff5258fa898ac8fe1d71954e9a440500ef7879b8a1c46","link-u-avif-sample-images/fox.profile2.12bpc.yuv420.monochrome.odd-width.avif":"466efdd269f3be3b1c88afc093c839e50ba5eaf6bd0c2425e157000d02a3c21a","link-u-avif-sample-images/fox.profile2.12bpc.yuv420.monochrome.odd-width.odd-height.avif":"36014509d0688cb307e0ffcdb5b4c16ff6e6c79772c7fbbeea33b4d483a1566f","link-u-avif-sample-images/fox.profile2.12bpc.yuv420.odd-height.avif":"d1786723a5d6ea1e1764b0045dc3f669fe3905ffc2913011a2b1b424d2393397","link-u-avif-sample-images/fox.profile2.12bpc.yuv420.odd-width.avif":"a2d9178cc5622e28472a735650d9c4deaec6d27d69830110911f4158f9d4a04e","link-u-avif-sample-images/fox.profile2.12bpc.yuv420.odd-width.odd-height.avif":"89a9fc7598d72251b903e0c7088ab3e7a7f316b5e02b85f8c69e51f8eb0c7e69","link-u-avif-sample-images/fox.profile2.12bpc.yuv422.avif":"51476b8471e1c0a5ebbd1e7545709495bef619cc96c02d277aad32b1deff8ea9","link-u-avif-sample-images/fox.profile2.12bpc.yuv422.monochrome.avif":"caf50c467242b3fa0b895a2af131fa0d03dd7b34989f2b1a51d25b2246c98fab","link-u-avif-sample-images/fox.profile2.12bpc.yuv422.monochrome.odd-height.avif":"1e88b92df592c02af53ff5258fa898ac8fe1d71954e9a440500ef7879b8a1c46","link-u-avif-sample-images/fox.profile2.12bpc.yuv422.monochrome.odd-width.avif":"466efdd269f3be3b1c88afc093c839e50ba5eaf6bd0c2425e157000d02a3c21a","link-u-avif-sample-images/fox.profile2.12bpc.yuv422.monochrome.odd-width.odd-height.avif":"36014509d0688cb307e0ffcdb5b4c16ff6e6c79772c7fbbeea33b4d483a1566f","link-u-avif-sample-images/fox.profile2.12bpc.yuv422.odd-height.avif":"4808960cdcd1207b29eb6ef5b4db81ae5e63c5d40ef92f7a1e8f4430e765bde4","link-u-avif-sample-images/fox.profile2.12bpc.yuv422.odd-width.avif":"71f3c73737bc04c23d93ea2c61a8a07408f604192fe53fe12c65050927dacb4e","link-u-avif-sample-images/fox.profile2.12bpc.yuv422.odd-width.odd-height.avif":"8f9649384fa09c70af0c2e9e0d94ecd17492c702e015d9d6290d3aefc57c548c","link-u-avif-sample-images/fox.profile2.12bpc.yuv444.avif":"ed96eca6ed79863eaf91e4d666e4e220b5fa4e5a6cb1696477ba901ac12f5dde","link-u-avif-sample-images/fox.profile2.12bpc.yuv444.monochrome.avif":"caf50c467242b3fa0b895a2af131fa0d03dd7b34989f2b1a51d25b2246c98fab","link-u-avif-sample-images/fox.profile2.12bpc.yuv444.monochrome.odd-height.avif":"1e88b92df592c02af53ff5258fa898ac8fe1d71954e9a440500ef7879b8a1c46","link-u-avif-sample-images/fox.profile2.12bpc.yuv444.monochrome.odd-width.avif":"466efdd269f3be3b1c88afc093c839e50ba5eaf6bd0c2425e157000d02a3c21a","link-u-avif-sample-images/fox.profile2.12bpc.yuv444.monochrome.odd-width.odd-height.avif":"36014509d0688cb307e0ffcdb5b4c16ff6e6c79772c7fbbeea33b4d483a1566f","link-u-avif-sample-images/fox.profile2.12bpc.yuv444.odd-height.avif":"c43b4c607e301e34eb953770133d89d15e77d63be8d6421a80d6212fbbbf3453","link-u-avif-sample-images/fox.profile2.12bpc.yuv444.odd-width.avif":"0e6218ce250ee7f84a621f3af73286fd4dabea19e9898d3575c20c5955aa427d","link-u-avif-sample-images/fox.profile2.12bpc.yuv444.odd-width.odd-height.avif":"9f19846d884ac7d161ac2ca15811bb22ff7f3847bc1ad5d7713971ea024631aa","link-u-avif-sample-images/fox.profile2.8bpc.yuv422.avif":"2cb363d30f83bff58ee049874b1808b37cb1d35342edf16b3ce25cb243c9ea55","link-u-avif-sample-images/fox.profile2.8bpc.yuv422.monochrome.avif":"8217b88f350c5d3812d7f863fe9d710c4c1b846b0be8df29ce6b3eb30d2b8d8f","link-u-avif-sample-images/fox.profile2.8bpc.yuv422.monochrome.odd-height.avif":"51eccd8c1368ddec9bc1f3a7631dadb00682e985fbfea66c0a2f533f6a73b67e","link-u-avif-sample-images/fox.profile2.8bpc.yuv422.monochrome.odd-width.avif":"83fe4593ab839cf296a2ccb8a146daf826d1d602f4f239cb63ee020f2cc326f6","link-u-avif-sample-images/fox.profile2.8bpc.yuv422.monochrome.odd-width.odd-height.avif":"4e63b84a980a81adde586314a94d8f834ec763749d8797c286471415b6b75647","link-u-avif-sample-images/fox.profile2.8bpc.yuv422.odd-height.avif":"efc70882aacbb533c0e833a4401949d152dceb364846442cdccca5048ad17a60","link-u-avif-sample-images/fox.profile2.8bpc.yuv422.odd-width.avif":"c07575c88ef400c1725c9260a19439e0e784da41c7db3867059019ddbdb3bebe","link-u-avif-sample-images/fox.profile2.8bpc.yuv422.odd-width.odd-height.avif":"86aee64fd7b11b9834537ea14b2eff234c062c98d32fab51ff14aba262d5b106","link-u-avif-sample-images/hato.16bpc.png":"53b550c587cd1d19a1997184e47f4a3ff2a05cedf7cb4e42a9466a6d6cb60d8d","link-u-avif-sample-images/hato.jpg":"6d4804e5e4adf36a6b138544c81b743ed7abdd9a495a43e883ec77689ca28943","link-u-avif-sample-images/hato.png":"313880f4cc51160fec522d78f1fb7f06df70fe1929a731fc86c68ecefd312277","link-u-avif-sample-images/hato.profile0.10bpc.yuv420.avif":"1e84598c94bc795c55a551bdf6f283b4eed4997bda15e5c4bb2e29d0dc70897b","link-u-avif-sample-images/hato.profile0.10bpc.yuv420.monochrome.avif":"25c19a187d10eac963bb51b3fae1ffe50f3ccbc7ad02e51948dc7467b397ce61","link-u-avif-sample-images/hato.profile0.8bpc.yuv420.avif":"07cd454de19dd638354f75d9e97aab08bc8a04dd45c4f7531cb62a1a5656c8c9","link-u-avif-sample-images/hato.profile0.8bpc.yuv420.monochrome.avif":"120a3f26f3d6cde80869fb52bdb8fdd55b443882c98070ea938575e4790982ff","link-u-avif-sample-images/hato.profile2.10bpc.yuv422.avif":"d54251d4bc023f2e53624a46cb18e56cbc45768bd1bd50394de191c2a42106e8","link-u-avif-sample-images/hato.profile2.10bpc.yuv422.monochrome.avif":"ed33dfdb5e663b3394298b6921f9b19b129e14788dead776430eee2f14780a73","link-u-avif-sample-images/hato.profile2.12bpc.yuv422.avif":"ad361ac7d94fbc6af7ef30cbd3601ff366bc360c304480387a58a4c6fecee9b6","link-u-avif-sample-images/hato.profile2.12bpc.yuv422.monochrome.avif":"e28b4cacda95750e465e205fbfcba6a6af1d8418dac649838730c555ff7d828f","link-u-avif-sample-images/hato.profile2.8bpc.yuv422.avif":"69c353c482c2eb3d3671bb55f7ccfc932e4d781c714a72116e9138ffc6f6c720","link-u-avif-sample-images/hato.profile2.8bpc.yuv422.monochrome.avif":"e7d6f7d42a8519e1482f225fe447b5642d19a54ee830529223eac114a0dec189","link-u-avif-sample-images/images.html":"9e18453dfe5b205600f158282c6896265281e3b04b2fbc332804fab1dbdb3faf","link-u-avif-sample-images/kimono.avif":"63412e0f67f37c8b6fcf0e8269a2afae0a017fa6a3a99d37d055c590b0be52d3","link-u-avif-sample-images/kimono.crop.avif":"f175dcd9c64813b759da185fa67076fb772b76059845b2aad3ddcfab257f75ad","link-u-avif-sample-images/kimono.crop.png":"0d5605bae0ec9d39aad9dc8e1a371d0327c6a224643983e3ee1f4d44cb00f19d","link-u-avif-sample-images/kimono.jpg":"a6ad58e3cea437ee0c841115ba67ae7354de7af734de50de9d0853dd4e571577","link-u-avif-sample-images/kimono.mirror-horizontal.avif":"2bbc004d91145488610158a5acdb4d706495a2b15511db20ff57bb9efd80885c","link-u-avif-sample-images/kimono.mirror-horizontal.png":"9af9e839fe6bf6342831970c20291f619570d2fc687951ae00cd81ea766f53fe","link-u-avif-sample-images/kimono.mirror-vertical.avif":"f10eb04791fcca3409868b367128649f32e6b6fffcf02484cdefa57909f6bb74","link-u-avif-sample-images/kimono.mirror-vertical.png":"4ed003c5868fd2e78c7b2dcbd54a67a0e7593dabb3ac82b1c9e5e2dbdf09b8ec","link-u-avif-sample-images/kimono.mirror-vertical.rotate270.avif":"33c36ec2274b00ac6f81c9f61e55c20cbfce1649ad27520afe635310f516ead1","link-u-avif-sample-images/kimono.mirror-vertical.rotate270.crop.avif":"90ca48f657455b8f8e4a4e1769a05af90a3e34dca11a8b3c32552daf378ee956","link-u-avif-sample-images/kimono.mirror-vertical.rotate270.png":"74b9b7ffa8955761f747a0e6e81d5b7ecb5e325383546110e1b6aa9986728035","link-u-avif-sample-images/kimono.png":"84fd6cfb97a27739608e21779f874b4ae7e80342b2588e8b0b092dee2d57c881","link-u-avif-sample-images/kimono.rotate270.avif":"79a99a0415276cc11f2e871d070a9df84df3385888a2f2fa3534320f6bed98ed","link-u-avif-sample-images/kimono.rotate270.png":"1918a47c02b378945a705301abd4250ddc65bb95afce9424572ffd0fdd1f45ef","link-u-avif-sample-images/kimono.rotate90.avif":"bd1157d8c840713c82b907b9d3ae80bc3817849e11c323d875f8016e035bd3cc","link-u-avif-sample-images/kimono.rotate90.png":"1a73c61692abe96d0a7a9accdb36a83d51bceac79bbb83a00571570f494cca49","link-u-avif-sample-images/plum-blossom-large.png":"af6ea005b726ca39f342e946aa53bed88e5a140413ce896d166bb35ab0aa3b4f","link-u-avif-sample-images/plum-blossom-large.profile0.10bpc.yuv420.alpha-full.avif":"cf8e15ec4b210235f3d68332a1adeb64e35c41b8d8e1e7586ae38b6d9cd8926c","link-u-avif-sample-images/plum-blossom-large.profile0.10bpc.yuv420.alpha-full.monochrome.avif":"b413440309d5669a7aefa06f291f72de0d0c09972e3da9a385e6016d6a1c5562","link-u-avif-sample-images/plum-blossom-large.profile0.10bpc.yuv420.alpha-limited.avif":"64f6f2b1fda594af5c9e2d6e4bc752b55e8121000cdcedc0066018e53f76de40","link-u-avif-sample-images/plum-blossom-large.profile0.10bpc.yuv420.alpha-limited.monochrome.avif":"2b175a600aed64c1c1de4b2d661fb405437b1ff000b964d4be6ac437ce73136f","link-u-avif-sample-images/plum-blossom-large.profile0.8bpc.yuv420.alpha-full.avif":"21ebb3732186bf7c6c13cf7197155b64201e674b9c79cf613b6e5718bde14c2a","link-u-avif-sample-images/plum-blossom-large.profile0.8bpc.yuv420.alpha-full.monochrome.avif":"65917797e511c9033b3e225eb5d84f3c0440b7a496d4b8ab5674e123ad68aab7","link-u-avif-sample-images/plum-blossom-large.profile0.8bpc.yuv420.alpha-limited.avif":"f4809df9188fa46ed100f63c78c4cf42559d90a98351a8f69e177385920672b4","link-u-avif-sample-images/plum-blossom-large.profile0.8bpc.yuv420.alpha-limited.monochrome.avif":"dffc213dc36f0b5ff3d86254f5185c2d1fb03380918a8fa39d186fb59cbba7cc","link-u-avif-sample-images/plum-blossom-large.profile1.10bpc.yuv444.alpha-full.avif":"0a615cfb673ab45e37da3582c17dd36f86d5da3d81246a32951d1db4ed90149d","link-u-avif-sample-images/plum-blossom-large.profile1.10bpc.yuv444.alpha-limited.avif":"d1cc6a0db116a68e229676b289e8ced84d42a9f0e8d3ccd760fc92dbeb932547","link-u-avif-sample-images/plum-blossom-large.profile1.8bpc.yuv444.alpha-full.avif":"8626cf0b2c60fee51cf1df7fe4d8a18081b72e3604f7d3ff14cc5a35581927d9","link-u-avif-sample-images/plum-blossom-large.profile1.8bpc.yuv444.alpha-limited.avif":"56bf18e4bcbfbea460c306ab900fc506169854d2b91690e1a48156a86fff3264","link-u-avif-sample-images/plum-blossom-large.profile2.10bpc.yuv422.alpha-full.avif":"b56f3c33797e4c5bb80418ae25f6f2c6fc88ddc1f6965d82abc44059f052f36c","link-u-avif-sample-images/plum-blossom-large.profile2.10bpc.yuv422.alpha-full.monochrome.avif":"c3c6db4ce801c68e2afd7bfb72abacc13287cc2e247917a817ff5632bd4b18fb","link-u-avif-sample-images/plum-blossom-large.profile2.10bpc.yuv422.alpha-limited.avif":"095f57fff1dc037a6414c60263415dcfa86b10d81f58e8e4c3aef17cffae0e5f","link-u-avif-sample-images/plum-blossom-large.profile2.10bpc.yuv422.alpha-limited.monochrome.avif":"ba3035a69296d12f47d1c450f2de8cc0c9059ebbf27bb8b0996ff6d1ab1132a1","link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv420.alpha-full.avif":"a9551e1963049b874216b40aaf9be45bc44dc11887770712b77240862c6c08a9","link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv420.alpha-full.monochrome.avif":"a8a0ba881cd0aef45a5874f412e97812ca457eaf12e56b34bac2ba051e142828","link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv420.alpha-limited.avif":"6891b5bdbed7f541c673c66cec4584b191bb737a49b37cca16ae069830890b42","link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv420.alpha-limited.monochrome.avif":"67e66826637e349e1c3c46316c7048d152aed8453d8cdd00c6b786f87fe176d8","link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv422.alpha-full.avif":"a466503110f60dcadaafe78c2cb0a8ca58334c22868efe428c7ac12b69407c95","link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv422.alpha-full.monochrome.avif":"a8a0ba881cd0aef45a5874f412e97812ca457eaf12e56b34bac2ba051e142828","link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv422.alpha-limited.avif":"061b4c70707e7fc8866580656cca7ca2da2263645829a564dbf8f205d639f058","link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv422.alpha-limited.monochrome.avif":"67e66826637e349e1c3c46316c7048d152aed8453d8cdd00c6b786f87fe176d8","link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv444.alpha-full.avif":"4a03c8bcfcaadccdeb07432ed80680b06aba5ae5e616fc370b376acb478f6cd1","link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv444.alpha-full.monochrome.avif":"a8a0ba881cd0aef45a5874f412e97812ca457eaf12e56b34bac2ba051e142828","link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv444.alpha-limited.avif":"376625ce4e7ec3b57344a9f2185a34975fe380774c9f8e0dd4ef61c46da94fca","link-u-avif-sample-images/plum-blossom-large.profile2.12bpc.yuv444.alpha-limited.monochrome.avif":"67e66826637e349e1c3c46316c7048d152aed8453d8cdd00c6b786f87fe176d8","link-u-avif-sample-images/plum-blossom-large.profile2.8bpc.yuv422.alpha-full.avif":"1e17b7dd8e351cb667bc6ec0b81fdebca9fd30ad5e588b3eac57bf9f90a9b58b","link-u-avif-sample-images/plum-blossom-large.profile2.8bpc.yuv422.alpha-full.monochrome.avif":"f77588d2ff39e4461869a95ca236efdf4a3fdc17b8a6e3907e63b417e56c81b5","link-u-avif-sample-images/plum-blossom-large.profile2.8bpc.yuv422.alpha-limited.avif":"f2eabd3fc2db07b361d55b5af63023d28b5bdd0047a665e9d0685651ce9db94b","link-u-avif-sample-images/plum-blossom-large.profile2.8bpc.yuv422.alpha-limited.monochrome.avif":"dd88c377b253d689bfd4600d7c3007448df0ed92f679b661d5d51e051a6916d8","link-u-avif-sample-images/plum-blossom-small.png":"c859fd97b647e494461f65835b9c1c3476807aee77076599adf18a832b3617a4","link-u-avif-sample-images/plum-blossom-small.profile0.10bpc.yuv420.alpha-full.avif":"fe3379620f983e5da4210b0f7c5d164e86208b34106d6b11d56e2b52beee5dfe","link-u-avif-sample-images/plum-blossom-small.profile0.10bpc.yuv420.alpha-full.monochrome.avif":"9e6234686053dba2e44bb32192c641074095a61e45aa1bede85bb83751e6e157","link-u-avif-sample-images/plum-blossom-small.profile0.10bpc.yuv420.alpha-limited.avif":"60ffa59dd007aea3bb596cfb03853b3dad490b1ffd10471ad4fe1901ec819907","link-u-avif-sample-images/plum-blossom-small.profile0.10bpc.yuv420.alpha-limited.monochrome.avif":"58abfa027525aca7339a705f311bc30b000aef9822c7c50b232894ece1ba9cb1","link-u-avif-sample-images/plum-blossom-small.profile0.8bpc.yuv420.alpha-full.avif":"541ca66a11b1430d11f77b74a13f859239a3bd9f44976b8dfe163c5d7595a69f","link-u-avif-sample-images/plum-blossom-small.profile0.8bpc.yuv420.alpha-full.monochrome.avif":"6d7852c63c27a77bef94443e178ecf6b6a3da8cc846f9f0c1adc17f7fc35e1f3","link-u-avif-sample-images/plum-blossom-small.profile0.8bpc.yuv420.alpha-limited.avif":"3712216ffc7edb95a976b68469ead533fda6fe9f3d2e8cb09cbdb0d01d9c094b","link-u-avif-sample-images/plum-blossom-small.profile0.8bpc.yuv420.alpha-limited.monochrome.avif":"59672af536b169ebf7e48129167dc91cb253925517c37db28b64539f7afba5d3","link-u-avif-sample-images/plum-blossom-small.profile1.10bpc.yuv444.alpha-full.avif":"561d5158425ad39425916a3be048b0202e82efef44cf1a9f711db57192d2ff01","link-u-avif-sample-images/plum-blossom-small.profile1.10bpc.yuv444.alpha-limited.avif":"88336f29457c1dc4ae0b754ef14b791de4d8c337f2b44d7960aafcca08a5586e","link-u-avif-sample-images/plum-blossom-small.profile1.8bpc.yuv444.alpha-full.avif":"245a3dad6371dc702f29eb7e9735f843b63c525da871859728bedbe5bb274985","link-u-avif-sample-images/plum-blossom-small.profile1.8bpc.yuv444.alpha-limited.avif":"490c216b5850c670f6088ee72c7fd906102b2dd0c8432c01a517b3328db27c75","link-u-avif-sample-images/plum-blossom-small.profile2.10bpc.yuv422.alpha-full.avif":"0d0bbbcb0c9ade1c827317a6409ce6ba25027b36da1b6752379a5f5d4c8af056","link-u-avif-sample-images/plum-blossom-small.profile2.10bpc.yuv422.alpha-full.monochrome.avif":"418a9d4b7dcbc1f67fc4b95ccb2e7946c446fddd35a79f0d587b3f2165cb3f14","link-u-avif-sample-images/plum-blossom-small.profile2.10bpc.yuv422.alpha-limited.avif":"a41dcfabb3795ed93a05881a91bf4d1c5d1b9b0e5d0db728f12684b12613e0c9","link-u-avif-sample-images/plum-blossom-small.profile2.10bpc.yuv422.alpha-limited.monochrome.avif":"4b6a18f4f608d1b00598e67c1c91a4e8f4943ae5acf0166ae0121cc21f3b7437","link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv420.alpha-full.avif":"5e6b83adee3aeac4bba3f38e854e2ed7585aa1557a74b5fa66596098c53e26f2","link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv420.alpha-full.monochrome.avif":"fb0937564c08f4e1c22ebbde426a0eff6a1d388434c30148bc7e5582dc378caa","link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv420.alpha-limited.avif":"f42e780bff644167e27525fee65b23e70814f7665ea19b6d693eb127c5eeebd8","link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv420.alpha-limited.monochrome.avif":"d41ead1d69d33d0cf5f6fe575beb5f60d9565300c535f9042113dd8a748c1d31","link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv422.alpha-full.avif":"c6ee9234ee7783d0203f9512e3cc8fe76a694675bcf03c320ff8bab4684bd4e9","link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv422.alpha-full.monochrome.avif":"fb0937564c08f4e1c22ebbde426a0eff6a1d388434c30148bc7e5582dc378caa","link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv422.alpha-limited.avif":"21e1e51fc6da66e090e12e1df5aeabf1f478df64bcb8151caaa687ad262bdd9d","link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv422.alpha-limited.monochrome.avif":"d41ead1d69d33d0cf5f6fe575beb5f60d9565300c535f9042113dd8a748c1d31","link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv444.alpha-full.avif":"dfed73d646d7159d3ee4f9ce95ea628fdd33bf8bf1bb02a83d88302d088f4d97","link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv444.alpha-full.monochrome.avif":"fb0937564c08f4e1c22ebbde426a0eff6a1d388434c30148bc7e5582dc378caa","link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv444.alpha-limited.avif":"5539cd575256772ba31d6e87cb0136d5f465f84b041a4677b1023cfd6bee9956","link-u-avif-sample-images/plum-blossom-small.profile2.12bpc.yuv444.alpha-limited.monochrome.avif":"d41ead1d69d33d0cf5f6fe575beb5f60d9565300c535f9042113dd8a748c1d31","link-u-avif-sample-images/plum-blossom-small.profile2.8bpc.yuv422.alpha-full.avif":"f205cf2c05265b84e45ceb723e9a3707fd8749130166d4797e64c8c62b497f8c","link-u-avif-sample-images/plum-blossom-small.profile2.8bpc.yuv422.alpha-full.monochrome.avif":"ad2244cb7b2ac487a5104d6e5a07270f9ceb2550e4d56d3662fcc1868910ced5","link-u-avif-sample-images/plum-blossom-small.profile2.8bpc.yuv422.alpha-limited.avif":"7ef9468effdc970e4e6e8cc7533d66dc967686e357dda3dda186c021f9e6156b","link-u-avif-sample-images/plum-blossom-small.profile2.8bpc.yuv422.alpha-limited.monochrome.avif":"3dd34d854ff83b6e27a2bf98301380a6cac272084ed863735285ab5dc8acda00","link-u-avif-sample-images/plum-blossom.svg":"be1f03dd05f63292c85a96b1c48fb06727283610cc69b1e116d547bab27b171d","link-u-avif-sample-images/red-at-12-oclock-with-color-profile-10bpc.avif":"5842951d81118d256962384e08a986816e8ade6b05530269f0208c6b69cedb3b","link-u-avif-sample-images/red-at-12-oclock-with-color-profile-12bpc.avif":"1f0c9f36d69b9aa13eff3897ada3e78b81099c613b329a402c27e09453e7e261","link-u-avif-sample-images/red-at-12-oclock-with-color-profile-8bpc.avif":"3e6f2f4016e66e3c94707eaa8373e6f582321e005964cd35b64bc183e1bf10ea","link-u-avif-sample-images/red-at-12-oclock-with-color-profile-lossy.avif":"79483242f2dca12c4ec18bd33ff8099216b3094fb55a26a909f046b2f9b4ce58","link-u-avif-sample-images/red-at-12-oclock-with-color-profile.jpg":"d56f809ea5eda74578af57e2f80b41856a1fe2ff436c741aa58757387af998bd","link-u-avif-sample-images/red-at-12-oclock-with-color-profile.png":"4eab95e358eb48e052c7b8c94d30a8c6cb1c9c3c2dfd9845240281dd5dd7b800","link-u-avif-sample-images/scripts/compare.sh":"0562689bcd40e9fc1322bf037d6f999aa4406a2229f19e74b96cc450e370e429","link-u-avif-sample-images/star-10bpc-with-alpha.avifs":"5643ac1f235ae6599186dd66c66507db6fa46a17b2b18e82ea9344870eb98a9b","link-u-avif-sample-images/star-10bpc.avifs":"c61d899a59dbd8c7b2f7bcfca9069a0e13ff1606899af227938a28502e6cbf88","link-u-avif-sample-images/star-12bpc-with-alpha.avifs":"88a350c3550ce36c1777fe7eb1e906c6829d3ed8b241aa1e0e46f1a4e2567c4b","link-u-avif-sample-images/star-12bpc.avifs":"c1a59db6f180208a3177d77c7f9ab08290e903c7bdaf929331b807a510f8c619","link-u-avif-sample-images/star-8bpc-with-alpha.avifs":"13a12908cb162a855cccc9221a5f9f736e8ea07902ffbdcf007f8fde5ed255f2","link-u-avif-sample-images/star-8bpc.avifs":"ae35b161de67a5afeb195ee401f369c34990f0ff8662f70ab4065bc6931f0a66","link-u-avif-sample-images/star.gif":"389cdd02efbdce4f0205cae6e91c1f64e34fa0ca1fe02351da1b37e16cbb642a","link-u-avif-sample-images/star.input.txt":"970163b942843618616f42233abe91d40fb68f6f5451860db259551711867b55","link-u-avif-sample-images/star.png":"18569167cf7ebd265ab6973d071d259aacfbb46c0408b7d4874c8cc9df9bb1ad","link-u-avif-sample-images/star.svg":"13089d0986b31b87919029fa69f2b68981af4023306bf0f79922f6772396008a","link-u-avif-sample-images/star180.png":"21bc11be2b51334fe4589634507612e7edce96d36e6a99219d029e440164e8b8","link-u-avif-sample-images/star270.png":"5c93f538dcdc70840b9925b4089083acc9c25e95265b3f3dea18d695451b441e","link-u-avif-sample-images/star90.png":"2defc5d21e70447653fec5dc14a697d9dd555d7a0c14e79cb2d9f80796a51a6d","src/boxes.rs":"270a3e3bf90279bfc83f95acadaba9611c25243280bca71dfa9c044d5441cf15","src/lib.rs":"a88d6cc10ec1322b53a8f4c782b5133135ace0fdfcf03d1624b768788e17be0f","src/macros.rs":"76c840f9299797527fe71aa5b378ffb01312767372b45cc62deddb19775400ae","src/tests.rs":"75fe5467109242b2cc7991f8228e2e2ad1de5be2f29272a4a7f08c4e21ab5fa4","src/unstable.rs":"c2cef9a3b2b08a4da66fa0305fce7a117bd99c9b8d57b0a044e1d99dbda6faf5","tests/1x1-black-alpha-50pct-premultiplied.avif":"31a8c235bf2cf601a593a7bc33f7f2779f2d5b2e0cd145897b931fce94b0c0b8","tests/a1lx.avif":"81a784c568e7619bd47c4e7153181e9a86c8a03221097aa63979f97affd7efbb","tests/a1op.avif":"184e50efd3ad226800c610da7bc470d29b548d9fa942fd1fd1848ed02e2e5f0a","tests/alpha_video_avif_major_avis_compatible.avif":"81771981248c4e0d708f0828eadb20e9e37e7c21280efe5726666958f899c237","tests/alpha_video_fixed.avif":"67051d1a4ccf9f3e38d4514d8a6b3a2e07f1beb979369cabdc60881a698a36ac","tests/alpha_video_no_avis.avif":"a95f0e7c818bc5bf646143cf43474b70722e17669d4f2a32874c125936207d6a","tests/amr_nb_1f.3gp":"d1423e3414ad06b69f8b58d5c916ec353ba2d0402d99dec9f1c88acc33b6a127","tests/amr_wb_1f.3gp":"be635b24097e8757b0c04d70ab28e00417ca113e86108b6c269b79b64b89bcd5","tests/av1C-missing-essential.avif":"a1501254c4071847b2269fe40b81409c389ff14e91cf7c0005a47e6ea97a6803","tests/bad-ipma-flags.avif":"ecde7997b97db1910b9dcc7ca8e3c8957da0e83681ea9008c66dc9f12b78ad19","tests/bad-ipma-version.avif":"7f9a1a0b4ebbf8d800d22eaae5ff78970cc6b811317db6c1467c6883952b7c9b","tests/bbb_sunflower_QCIF_30fps_h263_noaudio_1f.3gp":"03e5b1264d0a188d77b9e676ba3ce23a801b17aaa11c0343dfd851d6ea4e3a40","tests/clap-basic-1_3x3-to-1x1.avif":"83af9c8196fa93b2475163585a23d0eb5a8f8015d0db8da7a5d6de61adfb1876","tests/clap-missing-essential.avif":"4d61aacd2327661a456abc76d3d490e5ddd2b6f8cbfa52922a6c541c9d983193","tests/clusterfuzz-testcase-minimized-mp4-6093954524250112":"af7044a470732d4e7e34ac7ab5ff038c58b66f09702cbcd774931d7766bbfd35","tests/corrupt/a1lx-marked-essential.avif":"0d481240222450827ea335ae9a1a300777a0db4f9b0f4c17ed77c758c5133fa3","tests/corrupt/a1op-missing-essential.avif":"33c24d54f43f1a7be7a8334718881c8a0de24730c997c7842b9d7140e75017ea","tests/corrupt/alpha_video_moov_is_moop.avif":"89e0091edd6efc2c5b163525553c5abc56263fe1b3b885184bb07b9ea4bf346d","tests/corrupt/bug-1655846.avif":"e0a5a06225800fadf05f5352503a4cec11af73eef705c43b4acab5f4a99dea50","tests/corrupt/bug-1661347.avif":"31c26561e1d9eafb60f7c5968b82a0859d203d73f17f26b29276256acee12966","tests/corrupt/clusterfuzz-testcase-minimized-avif-4914209301856256.avif":"34a142c7916e314881f3fb6394add1c543fac0e5b45109e3a425eeb4c68998d0","tests/corrupt/hdlr-not-first.avif":"2c29308af077209b9c984921b7e36f8fb7ca7cf379cf8eba4c7a91f65bc7a304","tests/corrupt/hdlr-not-pict.avif":"9fe37619606645a95725300a9e34fada9190d1e0b3919881db84353941ca9291","tests/corrupt/imir-before-clap.avif":"22d6b5dacf0ef0be59053beba7564b08037fed859ada2885e3476e0ff0d19c95","tests/corrupt/invalid-avif-colr-multiple-nclx.avif":"7990a995855120dc4f724a6098816595becc35077fcd9e0de8c68300b49c4f1f","tests/corrupt/invalid-avif-colr-multiple-prof.avif":"b077a6b58e3a13ad743ee3f19fbae53b521eab8727606e0dba9bf06384f3121c","tests/corrupt/invalid-avif-colr-multiple-rICC.avif":"88b24d4d588744b9f2cdc03944f28283e9315eb3de7d7d57773a0541137f6529","tests/corrupt/invalid-avif-colr-multiple.zip":"9abddcbc47fde6da20263a29b770c6a9e76c8ab8dc785ef8512f35d9cb3206ed","tests/corrupt/ipma-duplicate-item_id.avif":"ca8c5275b0b8b79c1068489a52d0a5c8f0b4453463971e72b694189f11c10745","tests/corrupt/ipma-duplicate-version-and-flags.avif":"cf8e15ec4b210235f3d68332a1adeb64e35c41b8d8e1e7586ae38b6d9cd8926c","tests/corrupt/ipma-invalid-property-index.avif":"2480e773fa716d22883032d05fd4cf2c6b00fba8796cf4ff286a5d1ba26adff6","tests/corrupt/lsel-missing-essential.avif":"43c3b1e4c4acecd7559a9a7197a7befd43c71705748f0f8c063bca3be1c6d074","tests/corrupt/no-alpha-av1C.avif":"ad3d34d6331db7d9bea0c5f37efb88923520e33e08e7c636a5df435a4575eae7","tests/corrupt/no-av1C.avif":"eeb4fc50930c91465999f787c4a2a3b12de20556da0857be72da5a1a9eaa3f01","tests/corrupt/no-ftyp.avif":"74b431f32b2e2761e77df7fdb260f623b4e8f7e3f4c8af8a42d6826911706d7b","tests/corrupt/no-hdlr.avif":"91a1eb70c7b6adf2104e471d7deeeb98084a591d64ce09ba106c27edfbc3a409","tests/corrupt/no-ispe.avif":"4b6edfd8c9b40c25dc40305a6057e32b5e65f40da4a9d810c58dbff53254113f","tests/corrupt/no-pitm.avif":"7960eeb9e6e5140fbe5eb6d281e6974efd6c3c0147562f3dcf06f6b009dc540a","tests/corrupt/no-pixi-for-alpha.avif":"f8adc3573c79ee25bf6d4dd2693c61661469b28f86a5c7b1d9e41b0e8d2d53bb","tests/corrupt/no-pixi.avif":"4b1776def440dc8b913c170e4479772ee6bbb299b8679f7c564704bd03c9597e","tests/hdlr-nonzero-reserved.avif":"b872dcd7b4f49c6808d6da109cf4fedc26a237c42e8529c5aa8f7130abaf40a9","tests/imir-missing-essential.avif":"b1226e4b1358528befbd3f1126b5caf0c5051b4354777b87e71f6001f3829f87","tests/invalid-avif-hdlr-name-multiple-nul.avif":"0d3e4a6ce42154ee288c18339c2b59ff2104fd890cd2d616e5dbf26375a90e98","tests/irot-missing-essential.avif":"b7da1fc1d1b45bb1b7ca3494476e052f711d794a6d010df6870872ed8b9da10e","tests/lsel.avif":"ef8ba6827709f48cd45f749efb580129162d9599ea98f3363d2140957502d806","tests/multiple-extents.avif":"b5549ac68793e155a726d754e565cea0da03fa17833d3545f45c79e13f4c9360","tests/no-mif1.avif":"1442aa6ffaeb9512724287768bfd1850d3aa29a651ef05abb33e5dec2b3ee5c2","tests/overflow.rs":"16b591d8def1a155b3b997622f6ea255536870d99c3d8f97c51755b77a50de3c","tests/public.rs":"8918d5190a36c697445aa4b140a31cd3032582f1e504b4c2527f75a2155f80ae","tests/valid-alpha.avif":"9d417a35b9b62ad3ff66ffbc55f16552aacf821a092aa5ef4adff7e746bd4c2f","tests/valid-avif-colr-nclx-and-prof-and-rICC.avif":"ab6f5e786d26f8bcade5993f8b9cca3cd004a3d7fcec76e829f5d0f98cb18e7b","tests/valid-avif-colr-nclx-and-prof.avif":"0e982818de61869fcb85a2a4c2b7b8aeecb3053cbfdc6276987f91204998eefb","tests/valid-avif-colr-nclx-and-rICC.avif":"8530ef1305ff956a0c2912d0b3d1e0fc3a68cf3103e70b04cc2574530389b030","tests/valid-avif-colr-nclx.avif":"345ab58b7b1cb48aba2e21eb8dc5ab0a751a78a752ce1896c59b4bf361992f38","tests/valid-avif-colr-prof-and-rICC.avif":"1f0f085141106885bda78b0879c768818420d8196b39440a36578456a7d50a6c","tests/valid-avif-colr-prof.avif":"5d7aaefb5204ebe1cc296456866b8e46e023748b921a38ee56fd6c776a9733ff","tests/valid-avif-colr-rICC.avif":"e1c7b49bfad5904b484bd5118e6b33b78e2dc708a31a10fcbb0e4a373ed8dbb7","tests/valid.avif":"f0b33e09bf01232e0877df325f47986c0bee7764f2a81c9c908ae109e7dc63c4"},"package":null} -\ No newline at end of file ---- thunderbird-102.11.1/third_party/rust/mp4parse/src/lib.rs.mp4parse-rust-8b5b652d38e007e736bb442ccd5aa5ed699db100 2023-05-24 00:50:52.000000000 +0200 -+++ thunderbird-102.11.1/third_party/rust/mp4parse/src/lib.rs 2023-06-08 14:17:40.193695212 +0200 -@@ -3184,8 +3184,13 @@ macro_rules! impl_mul { - type Output = $output; - - fn mul(self, rhs: $rhs) -> Self::Output { -- static_assertions::const_assert!(<$output>::MAX <= <$inner>::MAX as u64); -- static_assertions::const_assert!(<$lhs>::MAX * <$rhs>::MAX <= <$output>::MAX); -+ static_assertions::const_assert!( -+ <$output as UpperBounded>::MAX <= <$inner>::MAX as u64 -+ ); -+ static_assertions::const_assert!( -+ <$lhs as UpperBounded>::MAX * <$rhs as UpperBounded>::MAX -+ <= <$output as UpperBounded>::MAX -+ ); - - let lhs: $inner = self.get().into(); - let rhs: $inner = rhs.get().into(); diff --git a/rust-bindgen-2319-2339.patch b/rust-bindgen-2319-2339.patch deleted file mode 100644 index fcf2ae0..0000000 --- a/rust-bindgen-2319-2339.patch +++ /dev/null @@ -1,154 +0,0 @@ ---- thunderbird-102.11.1/third_party/rust/bindgen/.cargo-checksum.json.rust-bindgen-2319-2339 2023-05-24 00:50:52.000000000 +0200 -+++ thunderbird-102.11.1/third_party/rust/bindgen/.cargo-checksum.json 2023-06-07 01:11:35.838302019 +0200 -@@ -1 +1 @@ --{"files":{"Cargo.lock":"836e8f8431bd4ebdac9b1251676f6afa755757e401455259fe659e7280be8230","Cargo.toml":"3a585a6e27a177f08dedcb21f7d555e9db58fa158203273b228db91ebee4e6b3","LICENSE":"c23953d9deb0a3312dbeaf6c128a657f3591acee45067612fa68405eaa4525db","README.md":"29fe30d7a2729922b13a578bc8f5eedc808fd0f2ef67a3f12017548baf8f293a","build.rs":"3fe1e534c99df4ee207606794f133fb187c0948e055389f74c904994ecaed38a","csmith-fuzzing/README.md":"7107b70fedb0c0a0cadb3c439a49c1bd0119a6d38dc63b1aecc74d1942256ef2","src/callbacks.rs":"1e5a118b94977938751758ac0495b1d41ce5e280c066614a4a7cbd930f326350","src/clang.rs":"aa0644278a8319506be08904c0f6706fbcdcd72eb1e85564b8c7488bd810e126","src/codegen/bitfield_unit.rs":"a8fb1a2d97a99685106fcaac87d2013f79d2690d6a46ff05ad1e3629b6075664","src/codegen/bitfield_unit_tests.rs":"dd252134118450800b516e375c872e17b4c1aee63a7b8adbe5b2cd53434bbc7e","src/codegen/dyngen.rs":"15149bc927e5b2706f93e52a6b26ef55384b3baf40bfc9bc4343e9820479f26b","src/codegen/error.rs":"5e308b8c54b68511fc8ea2ad15ddac510172c4ff460a80a265336440b0c9653d","src/codegen/helpers.rs":"ea83104addb8af31736aaeb850e10c694cd434befe7ffaaa206208f722d72c58","src/codegen/impl_debug.rs":"1ff9ec754b610c98c757b114c6509473ead0e1a9375e9089a7fa40a41a753709","src/codegen/impl_partialeq.rs":"5e526fd88dd15dd1f04addd3c6ecea1d3da92293fadf04346d6c716791f436f9","src/codegen/mod.rs":"19fd11feefab0ff9ecaf8a01583583008269adce805508fb61b9a8acc49da586","src/codegen/struct_layout.rs":"b62c3569dcfb011daa4d09f1aa9eb732da69546c3deb9f247fa8ce7114dbc7b9","src/extra_assertions.rs":"494534bd4f18b80d89b180c8a93733e6617edcf7deac413e9a73fd6e7bc9ced7","src/features.rs":"fafb85510b1dfc9a41ed71f7d765fca49b236deb4ee567e00204e751362aaf23","src/ir/analysis/derive.rs":"ff4821d810961696008a57ae496f95ebcdc14b4c439fe87d78a84817442fa759","src/ir/analysis/has_destructor.rs":"d9a3a24bd4cabc87cddb0c76d27da1691f8f37ffb8eadf5b5975a1c44dea99c2","src/ir/analysis/has_float.rs":"5242cc07ec4d4bdf5a792e1f8ee5758a87838314917d42dbb9dcfc19620520ce","src/ir/analysis/has_type_param_in_array.rs":"ec3fb67f782abb4c866da91bce3f7ee6f8e2310c47a54065282431b909233f7d","src/ir/analysis/has_vtable.rs":"63e2d0f62171811893615c11453bc7b39438d0d83c3eb444dec2346140d86efe","src/ir/analysis/mod.rs":"2c54f0cd6f3d86cf3fcb07d9d0be06cde839cab4170671c80d806a3f27820faf","src/ir/analysis/sizedness.rs":"17f1f2b6affd025f73853b9b5a76b3f157b5f9e563e9eaa374735fcb84c13308","src/ir/analysis/template_params.rs":"da949976a7fd04d6fc564ea6a77dfdbf4f5bf05db64687ed7a0616cba598a42d","src/ir/annotations.rs":"1c931d7bbba1e1613e9cccaab58d14f75e79b831b5c881e41f5b5257a9cbced7","src/ir/comment.rs":"31d64a49ae3d9c3c348fa2539e03306ca3a23fae429cab452e42b31ecf632145","src/ir/comp.rs":"abaa90e27dc6416f1b8db003f87888e7651d5b46c4d4526153980e5621612e54","src/ir/context.rs":"3a76458a5aa74075a60a5cd752ed59ad3943054f55b017700389f78072935215","src/ir/derive.rs":"e5581852eec87918901a129284b4965aefc8a19394187a8095779a084f28fabe","src/ir/dot.rs":"e25ff72ac174a798894c9673d81bdfb86fa9f4228b34a14ce0dc741a186a52bd","src/ir/enum_ty.rs":"e49e3c6ffc0289584e2f836fe56a4b7ebf6ca3f8b602248141d67b9f533770cc","src/ir/function.rs":"aa454ace56bda8074b2865933282aa124624310c8bc0c994d454f5799f4e88be","src/ir/int.rs":"68a86182743ec338d58e42203364dc7c8970cb7ec3550433ca92f0c9489b4442","src/ir/item.rs":"a71bdacc7419ec86d52ac534158cf4bfa4600e9cbc214c0075766700f5b053b0","src/ir/item_kind.rs":"7666a1ff1b8260978b790a08b4139ab56b5c65714a5652bbcec7faa7443adc36","src/ir/layout.rs":"755e3787c262de434a53a8c326f0e825f95415ed6b0f925c1cddf208ca8e3bc4","src/ir/mod.rs":"713cd537434567003197a123cbae679602c715e976d22f7b23dafd0826ea4c70","src/ir/module.rs":"70cf6ddfeabe6cdc13fdc767c783216c073404848d827e85fc6c2de3a19b5c3f","src/ir/objc.rs":"195fb2a3e4371b90244f3a8f295fd80cc77e0f2daf8fd27e3d8e5b78bd6b55d6","src/ir/template.rs":"44bd7214cf1e7f70e60694115082aac5b8a6c1687fff584cd08cdcfadabc5734","src/ir/traversal.rs":"5ac088277f4dfe2918d81b9294aaee41fd83db8e46def66a05f89de078bf4c49","src/ir/ty.rs":"8f2b970da76850685c4d334289af6dede7742862d7a81f2236115afaa1a92fa9","src/ir/var.rs":"86e9f19403fb9231ba60dec0a04e5b56fe28a37c7a5e6f676c978789c9d93c5a","src/lib.rs":"ed2d0aeb48b28b4a96b8e76a10e00b10cb6cc32c0a686d536f9021463b7ee0e8","src/log_stubs.rs":"6dfdd908b7c6453da416cf232893768f9480e551ca4add0858ef88bf71ee6ceb","src/main.rs":"74e582c37b146090332b1496f5b4bca02c7629d03a4ae40302cb4a723f08e445","src/options.rs":"119358b741601dafc13560856f6e4b4f78b6cd2b19067893c2672ba8f5dc6de1","src/parse.rs":"4ffc54415eadb622ee488603862788c78361ef2c889de25259441a340c2a010f","src/regex_set.rs":"6c46357fb1ee68250e5e017cbf691f340041489ae78599eee7a5665a6ddce27f","src/time.rs":"8efe317e7c6b5ba8e0865ce7b49ca775ee8a02590f4241ef62f647fa3c22b68e"},"package":"2da379dbebc0b76ef63ca68d8fc6e71c0f13e59432e0987e508c1820e6ab5239"} -\ No newline at end of file -+{"files":{"Cargo.lock":"836e8f8431bd4ebdac9b1251676f6afa755757e401455259fe659e7280be8230","Cargo.toml":"3a585a6e27a177f08dedcb21f7d555e9db58fa158203273b228db91ebee4e6b3","LICENSE":"c23953d9deb0a3312dbeaf6c128a657f3591acee45067612fa68405eaa4525db","README.md":"29fe30d7a2729922b13a578bc8f5eedc808fd0f2ef67a3f12017548baf8f293a","build.rs":"3fe1e534c99df4ee207606794f133fb187c0948e055389f74c904994ecaed38a","csmith-fuzzing/README.md":"7107b70fedb0c0a0cadb3c439a49c1bd0119a6d38dc63b1aecc74d1942256ef2","src/callbacks.rs":"1e5a118b94977938751758ac0495b1d41ce5e280c066614a4a7cbd930f326350","src/clang.rs":"30fdc473ff70dcbc394927d6fb674d70a62c1a3847e855becd988dc476997815","src/codegen/bitfield_unit.rs":"a8fb1a2d97a99685106fcaac87d2013f79d2690d6a46ff05ad1e3629b6075664","src/codegen/bitfield_unit_tests.rs":"dd252134118450800b516e375c872e17b4c1aee63a7b8adbe5b2cd53434bbc7e","src/codegen/dyngen.rs":"15149bc927e5b2706f93e52a6b26ef55384b3baf40bfc9bc4343e9820479f26b","src/codegen/error.rs":"5e308b8c54b68511fc8ea2ad15ddac510172c4ff460a80a265336440b0c9653d","src/codegen/helpers.rs":"ea83104addb8af31736aaeb850e10c694cd434befe7ffaaa206208f722d72c58","src/codegen/impl_debug.rs":"1ff9ec754b610c98c757b114c6509473ead0e1a9375e9089a7fa40a41a753709","src/codegen/impl_partialeq.rs":"5e526fd88dd15dd1f04addd3c6ecea1d3da92293fadf04346d6c716791f436f9","src/codegen/mod.rs":"19fd11feefab0ff9ecaf8a01583583008269adce805508fb61b9a8acc49da586","src/codegen/struct_layout.rs":"b62c3569dcfb011daa4d09f1aa9eb732da69546c3deb9f247fa8ce7114dbc7b9","src/extra_assertions.rs":"494534bd4f18b80d89b180c8a93733e6617edcf7deac413e9a73fd6e7bc9ced7","src/features.rs":"fafb85510b1dfc9a41ed71f7d765fca49b236deb4ee567e00204e751362aaf23","src/ir/analysis/derive.rs":"ff4821d810961696008a57ae496f95ebcdc14b4c439fe87d78a84817442fa759","src/ir/analysis/has_destructor.rs":"d9a3a24bd4cabc87cddb0c76d27da1691f8f37ffb8eadf5b5975a1c44dea99c2","src/ir/analysis/has_float.rs":"5242cc07ec4d4bdf5a792e1f8ee5758a87838314917d42dbb9dcfc19620520ce","src/ir/analysis/has_type_param_in_array.rs":"ec3fb67f782abb4c866da91bce3f7ee6f8e2310c47a54065282431b909233f7d","src/ir/analysis/has_vtable.rs":"63e2d0f62171811893615c11453bc7b39438d0d83c3eb444dec2346140d86efe","src/ir/analysis/mod.rs":"2c54f0cd6f3d86cf3fcb07d9d0be06cde839cab4170671c80d806a3f27820faf","src/ir/analysis/sizedness.rs":"17f1f2b6affd025f73853b9b5a76b3f157b5f9e563e9eaa374735fcb84c13308","src/ir/analysis/template_params.rs":"da949976a7fd04d6fc564ea6a77dfdbf4f5bf05db64687ed7a0616cba598a42d","src/ir/annotations.rs":"1c931d7bbba1e1613e9cccaab58d14f75e79b831b5c881e41f5b5257a9cbced7","src/ir/comment.rs":"31d64a49ae3d9c3c348fa2539e03306ca3a23fae429cab452e42b31ecf632145","src/ir/comp.rs":"232300be66abbbc3d7ef948c24f000dd8a50d78e72aa0e4b2cc43ffd4f800226","src/ir/context.rs":"3a76458a5aa74075a60a5cd752ed59ad3943054f55b017700389f78072935215","src/ir/derive.rs":"e5581852eec87918901a129284b4965aefc8a19394187a8095779a084f28fabe","src/ir/dot.rs":"e25ff72ac174a798894c9673d81bdfb86fa9f4228b34a14ce0dc741a186a52bd","src/ir/enum_ty.rs":"e49e3c6ffc0289584e2f836fe56a4b7ebf6ca3f8b602248141d67b9f533770cc","src/ir/function.rs":"aa454ace56bda8074b2865933282aa124624310c8bc0c994d454f5799f4e88be","src/ir/int.rs":"68a86182743ec338d58e42203364dc7c8970cb7ec3550433ca92f0c9489b4442","src/ir/item.rs":"a71bdacc7419ec86d52ac534158cf4bfa4600e9cbc214c0075766700f5b053b0","src/ir/item_kind.rs":"7666a1ff1b8260978b790a08b4139ab56b5c65714a5652bbcec7faa7443adc36","src/ir/layout.rs":"755e3787c262de434a53a8c326f0e825f95415ed6b0f925c1cddf208ca8e3bc4","src/ir/mod.rs":"713cd537434567003197a123cbae679602c715e976d22f7b23dafd0826ea4c70","src/ir/module.rs":"70cf6ddfeabe6cdc13fdc767c783216c073404848d827e85fc6c2de3a19b5c3f","src/ir/objc.rs":"195fb2a3e4371b90244f3a8f295fd80cc77e0f2daf8fd27e3d8e5b78bd6b55d6","src/ir/template.rs":"44bd7214cf1e7f70e60694115082aac5b8a6c1687fff584cd08cdcfadabc5734","src/ir/traversal.rs":"5ac088277f4dfe2918d81b9294aaee41fd83db8e46def66a05f89de078bf4c49","src/ir/ty.rs":"8d7e7883316245c54e5dfa2fd150df1be2dc559c7df0828da736dd6b18d2165b","src/ir/var.rs":"1e7be8eedba72effa995b48c581504e61e407867d8794a8528975688742b0420","src/lib.rs":"ed2d0aeb48b28b4a96b8e76a10e00b10cb6cc32c0a686d536f9021463b7ee0e8","src/log_stubs.rs":"6dfdd908b7c6453da416cf232893768f9480e551ca4add0858ef88bf71ee6ceb","src/main.rs":"74e582c37b146090332b1496f5b4bca02c7629d03a4ae40302cb4a723f08e445","src/options.rs":"119358b741601dafc13560856f6e4b4f78b6cd2b19067893c2672ba8f5dc6de1","src/parse.rs":"4ffc54415eadb622ee488603862788c78361ef2c889de25259441a340c2a010f","src/regex_set.rs":"6c46357fb1ee68250e5e017cbf691f340041489ae78599eee7a5665a6ddce27f","src/time.rs":"8efe317e7c6b5ba8e0865ce7b49ca775ee8a02590f4241ef62f647fa3c22b68e"},"package":"2da379dbebc0b76ef63ca68d8fc6e71c0f13e59432e0987e508c1820e6ab5239"} -\ No newline at end of file ---- thunderbird-102.11.1/third_party/rust/bindgen/src/clang.rs.rust-bindgen-2319-2339 2023-05-24 00:50:51.000000000 +0200 -+++ thunderbird-102.11.1/third_party/rust/bindgen/src/clang.rs 2023-06-07 00:59:18.845709213 +0200 -@@ -54,6 +54,11 @@ impl Cursor { - unsafe { clang_isDeclaration(self.kind()) != 0 } - } - -+ /// Is this cursor's referent an anonymous record or so? -+ pub fn is_anonymous(&self) -> bool { -+ unsafe { clang_Cursor_isAnonymous(self.x) != 0 } -+ } -+ - /// Get this cursor's referent's spelling. - pub fn spelling(&self) -> String { - unsafe { cxstring_into_string(clang_getCursorSpelling(self.x)) } ---- thunderbird-102.11.1/third_party/rust/bindgen/src/ir/comp.rs.rust-bindgen-2319-2339 2023-05-24 00:50:52.000000000 +0200 -+++ thunderbird-102.11.1/third_party/rust/bindgen/src/ir/comp.rs 2023-06-07 00:59:18.846709211 +0200 -@@ -1372,8 +1372,7 @@ impl CompInfo { - - // A declaration of an union or a struct without name could - // also be an unnamed field, unfortunately. -- if cur.spelling().is_empty() && -- cur.kind() != CXCursor_EnumDecl -+ if cur.is_anonymous() && cur.kind() != CXCursor_EnumDecl - { - let ty = cur.cur_type(); - let offset = cur.offset_of_field().ok(); ---- thunderbird-102.11.1/third_party/rust/bindgen/src/ir/ty.rs.rust-bindgen-2319-2339 2023-05-24 00:50:52.000000000 +0200 -+++ thunderbird-102.11.1/third_party/rust/bindgen/src/ir/ty.rs 2023-06-07 00:59:18.847709209 +0200 -@@ -737,7 +737,12 @@ impl Type { - - let layout = ty.fallible_layout(ctx).ok(); - let cursor = ty.declaration(); -- let mut name = cursor.spelling(); -+ let is_anonymous = cursor.is_anonymous(); -+ let mut name = if is_anonymous { -+ None -+ } else { -+ Some(cursor.spelling()).filter(|n| !n.is_empty()) -+ }; - - debug!( - "from_clang_ty: {:?}, ty: {:?}, loc: {:?}", -@@ -771,7 +776,7 @@ impl Type { - if is_canonical_objcpointer && is_template_type_param { - // Objective-C generics are just ids with fancy name. - // To keep it simple, just name them ids -- name = "id".to_owned(); -+ name = Some("id".to_owned()); - } - } - -@@ -900,7 +905,7 @@ impl Type { - return Err(ParseError::Recurse); - } - } else { -- name = location.spelling(); -+ name = Some(location.spelling()); - } - - let complex = CompInfo::from_ty( -@@ -942,7 +947,7 @@ impl Type { - CXType_Typedef - ); - -- name = current.spelling(); -+ name = Some(location.spelling()); - - let inner_ty = cur - .typedef_type() -@@ -1126,10 +1131,10 @@ impl Type { - CXType_Enum => { - let enum_ = Enum::from_ty(ty, ctx).expect("Not an enum?"); - -- if name.is_empty() { -+ if !is_anonymous { - let pretty_name = ty.spelling(); - if clang::is_valid_identifier(&pretty_name) { -- name = pretty_name; -+ name = Some(pretty_name); - } - } - -@@ -1144,12 +1149,12 @@ impl Type { - ) - .expect("Not a complex type?"); - -- if name.is_empty() { -+ if !is_anonymous { - // The pretty-printed name may contain typedefed name, - // but may also be "struct (anonymous at .h:1)" - let pretty_name = ty.spelling(); - if clang::is_valid_identifier(&pretty_name) { -- name = pretty_name; -+ name = Some(pretty_name); - } - } - -@@ -1189,7 +1194,9 @@ impl Type { - CXType_ObjCClass | CXType_ObjCInterface => { - let interface = ObjCInterface::from_ty(&location, ctx) - .expect("Not a valid objc interface?"); -- name = interface.rust_name(); -+ if !is_anonymous { -+ name = Some(interface.rust_name()); -+ } - TypeKind::ObjCInterface(interface) - } - CXType_Dependent => { -@@ -1207,7 +1214,7 @@ impl Type { - } - }; - -- let name = if name.is_empty() { None } else { Some(name) }; -+ name = name.filter(|n| !n.is_empty()); - - let is_const = ty.is_const() || - (ty.kind() == CXType_ConstantArray && ---- thunderbird-102.11.1/third_party/rust/bindgen/src/ir/ty.rs.rust-bindgen-2319-2339 -+++ thunderbird-102.11.1/third_party/rust/bindgen/src/ir/ty.rs -@@ -1145,8 +1145,7 @@ impl Type { - location, - None, - ctx, -- ) -- .expect("Not able to resolve vector element?"); -+ )?; - TypeKind::Vector(inner, ty.num_elements().unwrap()) - } - CXType_ConstantArray => { ---- thunderbird-102.11.1/third_party/rust/bindgen/src/ir/var.rs.rust-bindgen-2319-2339 -+++ thunderbird-102.11.1/third_party/rust/bindgen/src/ir/var.rs -@@ -293,11 +293,11 @@ impl ClangSubItemParser for Var { - let ty = match Item::from_ty(&ty, cursor, None, ctx) { - Ok(ty) => ty, - Err(e) => { -- assert_eq!( -- ty.kind(), -- CXType_Auto, -+ assert!( -+ matches!(ty.kind(), CXType_Auto | CXType_Unexposed), - "Couldn't resolve constant type, and it \ -- wasn't an nondeductible auto type!" -+ wasn't an nondeductible auto type or unexposed \ -+ type!" - ); - return Err(e); - } From d6489329debdc29bdb2cca0125186e52a6d3a74f Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Sat, 20 Sep 2025 16:18:15 +0200 Subject: [PATCH 82/99] Apply Patch7 --- icecat.spec | 2 ++ 1 file changed, 2 insertions(+) diff --git a/icecat.spec b/icecat.spec index c4eff6e..e03cd37 100644 --- a/icecat.spec +++ b/icecat.spec @@ -318,6 +318,8 @@ and translations langpack add-ons. # Copy license files tar -xf %{SOURCE5} +%patch -P 7 -p 1 -b .frozen + # Fedora patches %if 0%{?fedora} %patch -P 221 -p 1 -b .firefox-nss-addon-hack From e6e6897ae4d16b5bea60844e11c6b57a6758c2c1 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Sat, 20 Sep 2025 16:42:30 +0200 Subject: [PATCH 83/99] Remove useless flag on s390x --- icecat.spec | 3 --- 1 file changed, 3 deletions(-) diff --git a/icecat.spec b/icecat.spec index e03cd37..ce2e3d5 100644 --- a/icecat.spec +++ b/icecat.spec @@ -395,9 +395,6 @@ echo "ac_add_options --disable-optimize" >> .mozconfig echo "ac_add_options --enable-rust-debug" >> .mozconfig %else %global optimize_flags "none" -%ifarch s390x -%define optimize_flags " -fno-schedule-insns" -%endif %if %{?optimize_flags} != "none" echo 'ac_add_options --enable-optimize=%{?optimize_flags}' >> .mozconfig %else From 92658a248fa01af0dd1c705d79bc5dbb0cc6e4ff Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Sat, 20 Sep 2025 17:33:19 +0200 Subject: [PATCH 84/99] Use clang19+LTO+PGO --- icecat.spec | 32 +++++++++++++------------------- 1 file changed, 13 insertions(+), 19 deletions(-) diff --git a/icecat.spec b/icecat.spec index ce2e3d5..2cf195c 100644 --- a/icecat.spec +++ b/icecat.spec @@ -22,9 +22,9 @@ ExcludeArch: %{ix86} %{arm} # Build PGO+LTO on x86_64 and aarch64 only due to build issues # on other arches. -%ifarch x86_64 +%ifarch x86_64 %{arm64} %if 0%{?release_build} -%global build_with_pgo 0 +%global build_with_pgo 1 %global pgo_wayland 0 %else %global build_with_pgo 0 @@ -38,7 +38,7 @@ ExcludeArch: %{ix86} %{arm} %endif # Disable LTO to work around rhbz#1883904 -%define _lto_cflags %{nil} +#define _lto_cflags #{nil} #################### # Active/Deactive language files handling @@ -229,15 +229,16 @@ BuildRequires: pkgconfig(libcurl) BuildRequires: pulseaudio-libs-devel %endif BuildRequires: llvm -%if 0%{?fedora} >= 40 || 0%{?rhel} >= 10 -BuildRequires: clang -BuildRequires: clang-libs -BuildRequires: llvm-devel -%global llvm_suffix -20 +%if 0%{?fedora} >= 42 || 0%{?rhel} >= 10 +BuildRequires: clang19 +BuildRequires: clang19-libs +BuildRequires: llvm19-devel +%global llvm_suffix -19 %else -BuildRequires: clang -BuildRequires: clang-libs -BuildRequires: llvm-devel +BuildRequires: clang17 +BuildRequires: clang17-libs +BuildRequires: llvm17-devel +%global llvm_suffix -17 %endif %if "%toolchain" == "clang" BuildRequires: lld @@ -497,13 +498,6 @@ MOZ_OPT_FLAGS=$(echo "$MOZ_OPT_FLAGS" | %{__sed} -e 's/-g/-g1/') export MOZ_DEBUG_FLAGS=" " %endif -# -mtls-dialect=gnu2 is not recognized by clang-20 -%if "%toolchain" == "clang" -%ifarch x86_64 -#MOZ_OPT_FLAGS=$(echo "$MOZ_OPT_FLAGS" | %%{__sed} -e 's/-mtls-dialect=gnu2//') -%endif -%endif - # We don't want firefox to use CK_GCM_PARAMS_V3 in nss MOZ_OPT_FLAGS="$MOZ_OPT_FLAGS -DNSS_PKCS11_3_0_STRICT" @@ -597,7 +591,7 @@ sed -i -e 's|#!/usr/bin/env python3|#!/usr/bin/env python3.11|' mach env | grep "WAYLAND" MOZ_ENABLE_WAYLAND=1 ./mach build -v 2>&1 | cat - && exit 1 %else -xvfb-run ./mach build 2>&1 | cat - || exit 1 +xvfb-run ./mach build -v 2>&1 | cat - || exit 1 %endif %else ./mach build -v 2>&1 | cat - || exit 1 From e6c13d721ba671b679692f7ebc4e4927a7022493 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Sat, 20 Sep 2025 20:18:52 +0200 Subject: [PATCH 85/99] Re-organize PGO+Wayland builds --- icecat.spec | 21 ++++++++------------- 1 file changed, 8 insertions(+), 13 deletions(-) diff --git a/icecat.spec b/icecat.spec index 2cf195c..b04f2ed 100644 --- a/icecat.spec +++ b/icecat.spec @@ -20,25 +20,19 @@ ExcludeArch: %{ix86} %{arm} # Downgrade optimization %global less_optbuild 0 -# Build PGO+LTO on x86_64 and aarch64 only due to build issues -# on other arches. +# Build PGO+LTO on x86_64 and aarch64 only %ifarch x86_64 %{arm64} %if 0%{?release_build} %global build_with_pgo 1 -%global pgo_wayland 0 +%global pgo_wayland 1 +%global launch_wayland_compositor 1 %else %global build_with_pgo 0 %global pgo_wayland 0 -%endif -%endif - %global launch_wayland_compositor 0 -%if 0%{?build_with_pgo} -%global launch_wayland_compositor 1 +%endif %endif -# Disable LTO to work around rhbz#1883904 -#define _lto_cflags #{nil} #################### # Active/Deactive language files handling @@ -245,15 +239,16 @@ BuildRequires: lld %endif BuildRequires: rust BuildRequires: rustfmt + %if 0%{?pgo_wayland} +BuildRequires: xorg-x11-server-Xvfb BuildRequires: mutter BuildRequires: gsettings-desktop-schemas BuildRequires: gnome-settings-daemon BuildRequires: mesa-dri-drivers BuildRequires: xorg-x11-server-Xwayland -%endif -%if 0%{?build_with_pgo} -BuildRequires: xorg-x11-server-Xvfb +BuildRequires: dbus-x11 +BuildRequires: gnome-keyring %endif %if 0%{?big_endian} From bac41826b05f9b67abbfef142de904533172ec06 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Sat, 20 Sep 2025 20:58:43 +0200 Subject: [PATCH 86/99] Add compiler-rt19 BR --- icecat.spec | 2 ++ 1 file changed, 2 insertions(+) diff --git a/icecat.spec b/icecat.spec index b04f2ed..3779383 100644 --- a/icecat.spec +++ b/icecat.spec @@ -227,11 +227,13 @@ BuildRequires: llvm BuildRequires: clang19 BuildRequires: clang19-libs BuildRequires: llvm19-devel +BuildRequires: compiler-rt19 %global llvm_suffix -19 %else BuildRequires: clang17 BuildRequires: clang17-libs BuildRequires: llvm17-devel +BuildRequires: compiler-rt17 %global llvm_suffix -17 %endif %if "%toolchain" == "clang" From dd1ff590fb6def353fd623938762f3df8c0ced99 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Sat, 20 Sep 2025 22:35:10 +0200 Subject: [PATCH 87/99] Kill MUTTER_PID --- icecat.spec | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/icecat.spec b/icecat.spec index 3779383..f0484b0 100644 --- a/icecat.spec +++ b/icecat.spec @@ -594,6 +594,10 @@ xvfb-run ./mach build -v 2>&1 | cat - || exit 1 ./mach build -v 2>&1 | cat - || exit 1 %endif +%if %{build_with_pgo} +kill $MUTTER_PID +%endif + %install # set up our default bookmarks %if 0%{?fedora} From 0082e2e455b0c5a8bb509db6327af9de8ee90d0d Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Sat, 20 Sep 2025 22:42:50 +0200 Subject: [PATCH 88/99] Fix PGO macro --- icecat.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/icecat.spec b/icecat.spec index f0484b0..fca662b 100644 --- a/icecat.spec +++ b/icecat.spec @@ -594,7 +594,7 @@ xvfb-run ./mach build -v 2>&1 | cat - || exit 1 ./mach build -v 2>&1 | cat - || exit 1 %endif -%if %{build_with_pgo} +%if 0%{?build_with_pgo} kill $MUTTER_PID %endif From 949daab63acc8e55dc70eb3c7dd05ebcdeb5836b Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Sun, 21 Sep 2025 12:33:51 +0200 Subject: [PATCH 89/99] Modify build command | Use constraints-build --- icecat.spec | 37 +++++-------------------------------- 1 file changed, 5 insertions(+), 32 deletions(-) diff --git a/icecat.spec b/icecat.spec index fca662b..be7932b 100644 --- a/icecat.spec +++ b/icecat.spec @@ -154,6 +154,7 @@ Patch603: %{name}-gcc-always-inline.patch BuildRequires: alsa-lib-devel BuildRequires: autoconf213 BuildRequires: bzip2-devel +BuildRequires: build-constraints-rpm-macros BuildRequires: cairo-devel BuildRequires: cargo %if !0%{?use_bundled_cbindgen} @@ -542,31 +543,14 @@ echo "ac_add_options MOZ_PGO=1" >> .mozconfig export CCACHE_DISABLE=1 %endif +# Require 4 GB of RAM per CPU core +%constrain_build -m 4096 %if %{?less_optbuild} -MOZ_SMP_FLAGS=-j1 +echo "mk_add_options MOZ_MAKE_FLAGS=\"-j1\"" >> .mozconfig %else -MOZ_SMP_FLAGS=-j1 -# On x86_64 architectures, Mozilla can build up to 4 jobs at once in parallel, -# however builds tend to fail on other arches when building in parallel. -%ifarch s390x %{arm64} -[ -z "$RPM_BUILD_NCPUS" ] && \ - RPM_BUILD_NCPUS="`/usr/bin/getconf _NPROCESSORS_ONLN`" -[ "$RPM_BUILD_NCPUS" -ge 2 ] && MOZ_SMP_FLAGS=-j2 -%endif -%ifarch x86_64 %{power64} -[ -z "$RPM_BUILD_NCPUS" ] && \ - RPM_BUILD_NCPUS="`/usr/bin/getconf _NPROCESSORS_ONLN`" -[ "$RPM_BUILD_NCPUS" -ge 2 ] && MOZ_SMP_FLAGS=-j2 -[ "$RPM_BUILD_NCPUS" -ge 4 ] && MOZ_SMP_FLAGS=-j4 -[ "$RPM_BUILD_NCPUS" -ge 8 ] && MOZ_SMP_FLAGS=-j8 -[ "$RPM_BUILD_NCPUS" -ge 16 ] && MOZ_SMP_FLAGS=-j16 -[ "$RPM_BUILD_NCPUS" -ge 24 ] && MOZ_SMP_FLAGS=-j24 -[ "$RPM_BUILD_NCPUS" -ge 32 ] && MOZ_SMP_FLAGS=-j32 -[ "$RPM_BUILD_NCPUS" -ge 64 ] && MOZ_SMP_FLAGS=-j64 -%endif +echo "mk_add_options MOZ_MAKE_FLAGS=\"-j%{_smp_build_ncpus}\"" >> .mozconfig %endif -echo "mk_add_options MOZ_MAKE_FLAGS=\"$MOZ_SMP_FLAGS\"" >> .mozconfig echo "mk_add_options MOZ_SERVICES_SYNC=1" >> .mozconfig echo "export STRIP=/bin/true" >> .mozconfig @@ -579,20 +563,9 @@ cp -p %{SOURCE19} . export CARGO_PROFILE_RELEASE_BUILD_OVERRIDE_DEBUG=true %endif - -export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE=system #Use python 3.11 for mach sed -i -e 's|#!/usr/bin/env python3|#!/usr/bin/env python3.11|' mach -%if 0%{?build_with_pgo} -%if 0%{?pgo_wayland} -env | grep "WAYLAND" -MOZ_ENABLE_WAYLAND=1 ./mach build -v 2>&1 | cat - && exit 1 -%else -xvfb-run ./mach build -v 2>&1 | cat - || exit 1 -%endif -%else ./mach build -v 2>&1 | cat - || exit 1 -%endif %if 0%{?build_with_pgo} kill $MUTTER_PID From d0a50452edf1e0d2641018e945cfe06f6ea1dc5c Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Sun, 21 Sep 2025 12:43:50 +0200 Subject: [PATCH 90/99] Remove useless BR package --- icecat.spec | 1 - 1 file changed, 1 deletion(-) diff --git a/icecat.spec b/icecat.spec index be7932b..28cb717 100644 --- a/icecat.spec +++ b/icecat.spec @@ -154,7 +154,6 @@ Patch603: %{name}-gcc-always-inline.patch BuildRequires: alsa-lib-devel BuildRequires: autoconf213 BuildRequires: bzip2-devel -BuildRequires: build-constraints-rpm-macros BuildRequires: cairo-devel BuildRequires: cargo %if !0%{?use_bundled_cbindgen} From 601940babcc4e33b80043a844b8965ac40f3d944 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Sun, 21 Sep 2025 14:32:41 +0200 Subject: [PATCH 91/99] Remove kill command --- icecat.spec | 4 ---- 1 file changed, 4 deletions(-) diff --git a/icecat.spec b/icecat.spec index 28cb717..78f2c40 100644 --- a/icecat.spec +++ b/icecat.spec @@ -566,10 +566,6 @@ export CARGO_PROFILE_RELEASE_BUILD_OVERRIDE_DEBUG=true sed -i -e 's|#!/usr/bin/env python3|#!/usr/bin/env python3.11|' mach ./mach build -v 2>&1 | cat - || exit 1 -%if 0%{?build_with_pgo} -kill $MUTTER_PID -%endif - %install # set up our default bookmarks %if 0%{?fedora} From 12620ddec75782e18c94cc1d7512a81f2708633e Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Sun, 21 Sep 2025 18:24:21 +0200 Subject: [PATCH 92/99] Set wayland environment --- icecat.spec | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/icecat.spec b/icecat.spec index 78f2c40..83359a8 100644 --- a/icecat.spec +++ b/icecat.spec @@ -564,7 +564,13 @@ export CARGO_PROFILE_RELEASE_BUILD_OVERRIDE_DEBUG=true #Use python 3.11 for mach sed -i -e 's|#!/usr/bin/env python3|#!/usr/bin/env python3.11|' mach + +%if 0%{?pgo_wayland} +env | grep "WAYLAND" +MOZ_ENABLE_WAYLAND=1 ./mach build -v 2>&1 | cat - || exit 1 +%else ./mach build -v 2>&1 | cat - || exit 1 +%endif %install # set up our default bookmarks From 67543ab854e7f58aab98c612df368b7571e078c1 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Sun, 21 Sep 2025 19:55:28 +0200 Subject: [PATCH 93/99] Fix Wayland compositor script --- icecat.spec | 10 +++++----- run-wayland-compositor | 30 ++++++++++++++++++++---------- 2 files changed, 25 insertions(+), 15 deletions(-) diff --git a/icecat.spec b/icecat.spec index 83359a8..15d3d03 100644 --- a/icecat.spec +++ b/icecat.spec @@ -214,6 +214,7 @@ BuildRequires: pipewire-devel BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3.11-devel +BuildRequires: python3-orjson BuildRequires: perl-interpreter BuildRequires: pkgconfig(xrender) BuildRequires: pkgconfig(libstartup-notification-1.0) @@ -555,7 +556,7 @@ echo "export STRIP=/bin/true" >> .mozconfig %if 0%{?launch_wayland_compositor} cp -p %{SOURCE19} . -. ./run-wayland-compositor +. ./run-wayland-compositor %endif %if %{?debug_build} @@ -565,11 +566,10 @@ export CARGO_PROFILE_RELEASE_BUILD_OVERRIDE_DEBUG=true #Use python 3.11 for mach sed -i -e 's|#!/usr/bin/env python3|#!/usr/bin/env python3.11|' mach -%if 0%{?pgo_wayland} -env | grep "WAYLAND" -MOZ_ENABLE_WAYLAND=1 ./mach build -v 2>&1 | cat - || exit 1 -%else ./mach build -v 2>&1 | cat - || exit 1 + +%if 0%{?build_with_pgo} +kill $MUTTER_PID %endif %install diff --git a/run-wayland-compositor b/run-wayland-compositor index 0480ed2..23ead19 100755 --- a/run-wayland-compositor +++ b/run-wayland-compositor @@ -20,21 +20,24 @@ if test -z "$DBUS_SESSION_BUS_ADDRESS" ; then # if not found, launch a new one eval `dbus-launch --sh-syntax` fi -eval `echo '' | /usr/bin/gnome-keyring-daemon -r -d --unlock --components=secrets` if [ -z "$XDG_RUNTIME_DIR" ]; then export XDG_RUNTIME_DIR=$HOME fi -. xvfb-run -s "-screen 0 1600x1200x24" -n 80 mutter --display=:80 --wayland --nested & -export DISPLAY=:80 - -if [ -z "$WAYLAND_DISPLAY" ] ; then - export WAYLAND_DISPLAY=wayland-0 -else - export WAYLAND_DISPLAY=wayland-1 +export WAYLAND_DISPLAY=icecat-pgo-wayland-0 +if [ -S "$XDG_RUNTIME_DIR/$WAYLAND_DISPLAY" ]; then + rm -f $XDG_RUNTIME_DIR/$WAYLAND_DISPLAY + rm -f $XDG_RUNTIME_DIR/$WAYLAND_DISPLAY.lock fi -sleep 10 + +echo "Launch mutter for $WAYLAND_DISPLAY" +mutter --headless --virtual-monitor 1920x1080 --wayland-display=$WAYLAND_DISPLAY --no-x11 & MUTTER_PID=$! +export MUTTER_PID +echo "Mutter PID $MUTTER_PID" + +echo "Waiting for mutter to start..." +sleep 5 retry_count=0 max_retries=5 until [ $retry_count -gt $max_retries ]; do @@ -47,4 +50,11 @@ until [ $retry_count -gt $max_retries ]; do fi done -env | grep "DISPLAY" +if [ ! -S "$XDG_RUNTIME_DIR/$WAYLAND_DISPLAY" ]; then + echo "Mutter failed to start!" + exit 1 +fi + +echo "Mutter is running, $XDG_RUNTIME_DIR/$WAYLAND_DISPLAY is here." + + From c7108086b882ffa62255084f7b2ac2087a0c301d Mon Sep 17 00:00:00 2001 From: Yaakov Selkowitz Date: Sun, 12 Oct 2025 01:17:59 -0400 Subject: [PATCH 94/99] BuildRequires: mesa-libEGL This too is needed to run mutter during the build. At least for flatpaks, libglvnd-egl does not pull in mesa-libEGL, so that the latter can be shipped as an extension rather than in the runtime. --- icecat.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/icecat.spec b/icecat.spec index 15d3d03..351f0ec 100644 --- a/icecat.spec +++ b/icecat.spec @@ -249,6 +249,7 @@ BuildRequires: mutter BuildRequires: gsettings-desktop-schemas BuildRequires: gnome-settings-daemon BuildRequires: mesa-dri-drivers +BuildRequires: mesa-libEGL BuildRequires: xorg-x11-server-Xwayland BuildRequires: dbus-x11 BuildRequires: gnome-keyring From 5c7dc50188ec23427a0b06878dcd843d667fcf15 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Tue, 14 Oct 2025 23:05:52 +0200 Subject: [PATCH 95/99] Release 140.4.0 --- .gitignore | 2 ++ icecat-140.3.0-remove_frozen_cargo_flag.patch | 11 ----------- icecat-lang_download.sh | 2 +- icecat.spec | 11 ++--------- sources | 4 ++-- 5 files changed, 7 insertions(+), 23 deletions(-) delete mode 100644 icecat-140.3.0-remove_frozen_cargo_flag.patch diff --git a/.gitignore b/.gitignore index 5e6f785..322cada 100644 --- a/.gitignore +++ b/.gitignore @@ -288,3 +288,5 @@ /icecat-128.14.0-rh1.tar.bz2 /icecat-140.3.0-langpacks.tar.gz /icecat-140.3.0-rh1.tar.bz2 +/icecat-140.4.0-langpacks.tar.gz +/icecat-140.4.0-rh1.tar.bz2 diff --git a/icecat-140.3.0-remove_frozen_cargo_flag.patch b/icecat-140.3.0-remove_frozen_cargo_flag.patch deleted file mode 100644 index 5ba729e..0000000 --- a/icecat-140.3.0-remove_frozen_cargo_flag.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/build/RunCbindgen.orig.py 2025-09-19 17:30:54.000000000 +0200 -+++ b/build/RunCbindgen.py 2025-09-20 15:53:53.173474575 +0200 -@@ -54,8 +54,6 @@ - # tree, so we want to let Cargo create lock files in this case. When built - # within a tree, the Rust dependencies have been vendored in so Cargo won't - # touch the lock file. -- if not buildconfig.substs.get("JS_STANDALONE"): -- args.append("--frozen") - - stdout, returncode = _run_process(args) - diff --git a/icecat-lang_download.sh b/icecat-lang_download.sh index 5444252..234df7f 100755 --- a/icecat-lang_download.sh +++ b/icecat-lang_download.sh @@ -1,6 +1,6 @@ #!/bin/bash -VERSION=140.3.0 +VERSION=140.4.0 URL=https://ftp.mozilla.org/pub/firefox/releases/${VERSION}esr/linux-x86_64/xpi/ for u in $URL; do diff --git a/icecat.spec b/icecat.spec index 351f0ec..388f0ca 100644 --- a/icecat.spec +++ b/icecat.spec @@ -94,7 +94,7 @@ ExcludeArch: %{ix86} %{arm} Name: icecat Epoch: 4 -Version: 140.3.0 +Version: 140.4.0 Release: %autorelease -e %{redhat_ver} Summary: GNU version of Firefox browser @@ -131,13 +131,8 @@ Source14: %{name}.desktop # cbingen Source17: cbindgen-vendor.tar.xz Source18: node-stdout-nonblocking-wrapper - Source19: run-wayland-compositor -# Gnuzilla patch: -# https://lists.gnu.org/archive/html/help-gnuzilla/2025-09/msg00002.html -Patch7: icecat-140.3.0-remove_frozen_cargo_flag.patch - # Fedora specific patches Patch221: firefox-nss-addon-hack.patch Patch224: %{name}-GLIBCXX-fix-for-GCC-12.patch @@ -318,8 +313,6 @@ and translations langpack add-ons. # Copy license files tar -xf %{SOURCE5} -%patch -P 7 -p 1 -b .frozen - # Fedora patches %if 0%{?fedora} %patch -P 221 -p 1 -b .firefox-nss-addon-hack @@ -570,7 +563,7 @@ sed -i -e 's|#!/usr/bin/env python3|#!/usr/bin/env python3.11|' mach ./mach build -v 2>&1 | cat - || exit 1 %if 0%{?build_with_pgo} -kill $MUTTER_PID +kill $MUTTER_PID %endif %install diff --git a/sources b/sources index 037d664..95b42b3 100644 --- a/sources +++ b/sources @@ -1,5 +1,5 @@ SHA512 (cbindgen-vendor.tar.xz) = 647dcadf3507bd05262613d03ff18a8c876bcbb4e83ce59f911128ae020ac16695298987c6c14f8b7a7aee5bb096740c6885c0a854d8b26431fc9a8ff864c369 -SHA512 (icecat-140.3.0-langpacks.tar.gz) = ee1f36e6adf38a98e6ac48f9db5603860cfc5e0a610b98fba7683d70c26474f64f78951df8dc2434362d46e297143f17791ca42180a85ce99d1ab96cf17ebdcf -SHA512 (icecat-140.3.0-rh1.tar.bz2) = 4580dc49248292b8d1e3e9daea3feccf9042aa9184465e9ca40cfeeb1f63745dfa5b0dc32dd47a4b5a5eee66a28eb19e2d5c8e98f7d61c433bf1eb7e05cf1f31 +SHA512 (icecat-140.4.0-langpacks.tar.gz) = 10cc6b24baf85adf0fa62dcfb70a19896bd1b76fd1089d407181001d387c1ee2d18a7216be0d18093ed7233afedea23b8b9ed99dbd6c9b824d8984ba7160592b +SHA512 (icecat-140.4.0-rh1.tar.bz2) = 053574810625cca918fd6e2aa569e49866e2c94bdeb76bb0e9b2ceccfba6477a941c8fc3ca7ba8954fe372e9e2c8f4ad124029e84b01cd8eb20da75de29ba0d6 SHA512 (icecat-COPYING-licensefiles.tar.gz) = ed541845170f1d209e322b0def3248d571e0c42c4a17c74e83197e743bd8a128a1475f5312d905c8e70d047eddeac17e604373892eb6d5f1720c5c361849c42c SHA512 (icecat.png) = a3cec16cb15a27c3c91b53e2c534e78b07911011ff1331e450c0baf8e13b76da7cea2a90e5d75191fa88cfbfd40a0a7f3e553e92b64d0043dadd5ad5edfdf81c From e815651b48206bf2340e9b514ea40de6ef8d355a Mon Sep 17 00:00:00 2001 From: Gordon Messmer Date: Thu, 16 Oct 2025 14:32:32 -0700 Subject: [PATCH 96/99] Use rpm's native resource tunable to limit parallelism. rpm 4.19 and newer have built-in tunable settings to limit parallel tasks which make %constrain_build redundant. See BZ#2404624 --- icecat.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/icecat.spec b/icecat.spec index 388f0ca..1811bae 100644 --- a/icecat.spec +++ b/icecat.spec @@ -538,7 +538,7 @@ export CCACHE_DISABLE=1 %endif # Require 4 GB of RAM per CPU core -%constrain_build -m 4096 +%global _smp_tasksize_proc 4096 %if %{?less_optbuild} echo "mk_add_options MOZ_MAKE_FLAGS=\"-j1\"" >> .mozconfig %else From 877e1d349473f60ac822b4864c0353af98058c8c Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Wed, 12 Nov 2025 21:11:37 +0100 Subject: [PATCH 97/99] Release 140.5.0 --- .gitignore | 2 ++ icecat-lang_download.sh | 2 +- icecat.spec | 2 +- sources | 4 ++-- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 322cada..bb8c8b1 100644 --- a/.gitignore +++ b/.gitignore @@ -290,3 +290,5 @@ /icecat-140.3.0-rh1.tar.bz2 /icecat-140.4.0-langpacks.tar.gz /icecat-140.4.0-rh1.tar.bz2 +/icecat-140.5.0-langpacks.tar.gz +/icecat-140.5.0-rh1.tar.bz2 diff --git a/icecat-lang_download.sh b/icecat-lang_download.sh index 234df7f..60877a0 100755 --- a/icecat-lang_download.sh +++ b/icecat-lang_download.sh @@ -1,6 +1,6 @@ #!/bin/bash -VERSION=140.4.0 +VERSION=140.5.0 URL=https://ftp.mozilla.org/pub/firefox/releases/${VERSION}esr/linux-x86_64/xpi/ for u in $URL; do diff --git a/icecat.spec b/icecat.spec index 1811bae..acabc43 100644 --- a/icecat.spec +++ b/icecat.spec @@ -94,7 +94,7 @@ ExcludeArch: %{ix86} %{arm} Name: icecat Epoch: 4 -Version: 140.4.0 +Version: 140.5.0 Release: %autorelease -e %{redhat_ver} Summary: GNU version of Firefox browser diff --git a/sources b/sources index 95b42b3..9212653 100644 --- a/sources +++ b/sources @@ -1,5 +1,5 @@ SHA512 (cbindgen-vendor.tar.xz) = 647dcadf3507bd05262613d03ff18a8c876bcbb4e83ce59f911128ae020ac16695298987c6c14f8b7a7aee5bb096740c6885c0a854d8b26431fc9a8ff864c369 -SHA512 (icecat-140.4.0-langpacks.tar.gz) = 10cc6b24baf85adf0fa62dcfb70a19896bd1b76fd1089d407181001d387c1ee2d18a7216be0d18093ed7233afedea23b8b9ed99dbd6c9b824d8984ba7160592b -SHA512 (icecat-140.4.0-rh1.tar.bz2) = 053574810625cca918fd6e2aa569e49866e2c94bdeb76bb0e9b2ceccfba6477a941c8fc3ca7ba8954fe372e9e2c8f4ad124029e84b01cd8eb20da75de29ba0d6 +SHA512 (icecat-140.5.0-langpacks.tar.gz) = cf70c8926de6cb08caaf7bfefc9e99aa313e2233579934d0ea0b0c03288a09e8e6b8e55e9bdce5bf467256e85bc42deade1255fe9bbb1d4e565635765bc7952a +SHA512 (icecat-140.5.0-rh1.tar.bz2) = 8601ea8b02f41502ce152bd6e171f3c866b69359d23a5572d9e4473cfd7a939ba3f6d67545eca7c61bb776358bc5523156a60ba8c88b02496944e25fee0af52f SHA512 (icecat-COPYING-licensefiles.tar.gz) = ed541845170f1d209e322b0def3248d571e0c42c4a17c74e83197e743bd8a128a1475f5312d905c8e70d047eddeac17e604373892eb6d5f1720c5c361849c42c SHA512 (icecat.png) = a3cec16cb15a27c3c91b53e2c534e78b07911011ff1331e450c0baf8e13b76da7cea2a90e5d75191fa88cfbfd40a0a7f3e553e92b64d0043dadd5ad5edfdf81c From 76cf83117ee0df239b05474f6e2a78d944a5aae4 Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Thu, 11 Dec 2025 12:04:28 +0100 Subject: [PATCH 98/99] Release 140.6.0 --- .gitignore | 2 ++ icecat-lang_download.sh | 2 +- icecat.spec | 4 ++-- sources | 4 ++-- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/.gitignore b/.gitignore index bb8c8b1..8e6c66e 100644 --- a/.gitignore +++ b/.gitignore @@ -292,3 +292,5 @@ /icecat-140.4.0-rh1.tar.bz2 /icecat-140.5.0-langpacks.tar.gz /icecat-140.5.0-rh1.tar.bz2 +/icecat-140.6.0-langpacks.tar.gz +/icecat-140.6.0-rh1.tar.bz2 diff --git a/icecat-lang_download.sh b/icecat-lang_download.sh index 60877a0..e9b368e 100755 --- a/icecat-lang_download.sh +++ b/icecat-lang_download.sh @@ -1,6 +1,6 @@ #!/bin/bash -VERSION=140.5.0 +VERSION=140.6.0 URL=https://ftp.mozilla.org/pub/firefox/releases/${VERSION}esr/linux-x86_64/xpi/ for u in $URL; do diff --git a/icecat.spec b/icecat.spec index acabc43..9d5cb90 100644 --- a/icecat.spec +++ b/icecat.spec @@ -94,13 +94,13 @@ ExcludeArch: %{ix86} %{arm} Name: icecat Epoch: 4 -Version: 140.5.0 +Version: 140.6.0 Release: %autorelease -e %{redhat_ver} Summary: GNU version of Firefox browser # Tri-licensing scheme for Gnuzilla/IceCat in parentheses, and licenses for the extensions included License: (MPL-1.1 OR GPL-2.0-or-later OR LGPL-2.1-or-later) AND GPL-3.0-or-later AND MIT AND BSD-4-Clause-UC AND ISC AND Apache-2.0 AND MPL-2.0 -URL: http://www.gnu.org/software/gnuzilla/ +URL: http://www.gnu.org/software/gnuzilla/ ## Source archive created by scripts based on Gnuzilla files. ## All modified files are hosted in a dedicated fork repository: diff --git a/sources b/sources index 9212653..406260c 100644 --- a/sources +++ b/sources @@ -1,5 +1,5 @@ SHA512 (cbindgen-vendor.tar.xz) = 647dcadf3507bd05262613d03ff18a8c876bcbb4e83ce59f911128ae020ac16695298987c6c14f8b7a7aee5bb096740c6885c0a854d8b26431fc9a8ff864c369 -SHA512 (icecat-140.5.0-langpacks.tar.gz) = cf70c8926de6cb08caaf7bfefc9e99aa313e2233579934d0ea0b0c03288a09e8e6b8e55e9bdce5bf467256e85bc42deade1255fe9bbb1d4e565635765bc7952a -SHA512 (icecat-140.5.0-rh1.tar.bz2) = 8601ea8b02f41502ce152bd6e171f3c866b69359d23a5572d9e4473cfd7a939ba3f6d67545eca7c61bb776358bc5523156a60ba8c88b02496944e25fee0af52f +SHA512 (icecat-140.6.0-langpacks.tar.gz) = ebe0f017daf0b8560f250b6181ec142796b90b1e7e6338da2e339c1844ed957138781642843f9fa8445c62afe89aa3745cecdff6dbccfcef1ffddcd2b7ad059d +SHA512 (icecat-140.6.0-rh1.tar.bz2) = 6d591eb9443dac5ecfdfa9b648f58cc393db97afe0faf6e05eed74db7eaf71d0ff77ec7437868c65503739bc79fbc37a92603c0e006a904477cf8c49cdbe2daf SHA512 (icecat-COPYING-licensefiles.tar.gz) = ed541845170f1d209e322b0def3248d571e0c42c4a17c74e83197e743bd8a128a1475f5312d905c8e70d047eddeac17e604373892eb6d5f1720c5c361849c42c SHA512 (icecat.png) = a3cec16cb15a27c3c91b53e2c534e78b07911011ff1331e450c0baf8e13b76da7cea2a90e5d75191fa88cfbfd40a0a7f3e553e92b64d0043dadd5ad5edfdf81c From 9bb51044667b988385bf7b4c659ce0dd8ce2020d Mon Sep 17 00:00:00 2001 From: Antonio Trande Date: Tue, 13 Jan 2026 22:43:09 +0100 Subject: [PATCH 99/99] Release 140.7.0 --- .gitignore | 2 ++ icecat-lang_download.sh | 2 +- icecat.spec | 2 +- sources | 4 ++-- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 8e6c66e..241f013 100644 --- a/.gitignore +++ b/.gitignore @@ -294,3 +294,5 @@ /icecat-140.5.0-rh1.tar.bz2 /icecat-140.6.0-langpacks.tar.gz /icecat-140.6.0-rh1.tar.bz2 +/icecat-140.7.0-langpacks.tar.gz +/icecat-140.7.0-rh1.tar.bz2 diff --git a/icecat-lang_download.sh b/icecat-lang_download.sh index e9b368e..3c0c445 100755 --- a/icecat-lang_download.sh +++ b/icecat-lang_download.sh @@ -1,6 +1,6 @@ #!/bin/bash -VERSION=140.6.0 +VERSION=140.7.0 URL=https://ftp.mozilla.org/pub/firefox/releases/${VERSION}esr/linux-x86_64/xpi/ for u in $URL; do diff --git a/icecat.spec b/icecat.spec index 9d5cb90..6e50c61 100644 --- a/icecat.spec +++ b/icecat.spec @@ -94,7 +94,7 @@ ExcludeArch: %{ix86} %{arm} Name: icecat Epoch: 4 -Version: 140.6.0 +Version: 140.7.0 Release: %autorelease -e %{redhat_ver} Summary: GNU version of Firefox browser diff --git a/sources b/sources index 406260c..889ba13 100644 --- a/sources +++ b/sources @@ -1,5 +1,5 @@ SHA512 (cbindgen-vendor.tar.xz) = 647dcadf3507bd05262613d03ff18a8c876bcbb4e83ce59f911128ae020ac16695298987c6c14f8b7a7aee5bb096740c6885c0a854d8b26431fc9a8ff864c369 -SHA512 (icecat-140.6.0-langpacks.tar.gz) = ebe0f017daf0b8560f250b6181ec142796b90b1e7e6338da2e339c1844ed957138781642843f9fa8445c62afe89aa3745cecdff6dbccfcef1ffddcd2b7ad059d -SHA512 (icecat-140.6.0-rh1.tar.bz2) = 6d591eb9443dac5ecfdfa9b648f58cc393db97afe0faf6e05eed74db7eaf71d0ff77ec7437868c65503739bc79fbc37a92603c0e006a904477cf8c49cdbe2daf +SHA512 (icecat-140.7.0-langpacks.tar.gz) = a4618e3272b48be4307c79222bdd55f321aefb6d6ba08beb10178d0b95530bc4130cf86901d0906e714bd75106ad8513957fe3ad335431c8faf5b2d9767e17de +SHA512 (icecat-140.7.0-rh1.tar.bz2) = 7a19f7928322bea905828e6a4e981395687f1b649e37518a8000bcfcb29446b424ee592f708d0c7c93ebeb901820752785f883a937e9361e9f172a0a9bacb603 SHA512 (icecat-COPYING-licensefiles.tar.gz) = ed541845170f1d209e322b0def3248d571e0c42c4a17c74e83197e743bd8a128a1475f5312d905c8e70d047eddeac17e604373892eb6d5f1720c5c361849c42c SHA512 (icecat.png) = a3cec16cb15a27c3c91b53e2c534e78b07911011ff1331e450c0baf8e13b76da7cea2a90e5d75191fa88cfbfd40a0a7f3e553e92b64d0043dadd5ad5edfdf81c