Compare commits

..

39 commits

Author SHA1 Message Date
Eike Rathke
5801fb5811 Update to 115.16.1 2024-10-30 15:29:08 +01:00
Eike Rathke
7f814ca70e Switch update-channel to esr
That also influences from where releasenotes are obtained under
Help -> About Thunderbird, Release Notes
2024-10-28 13:54:26 +01:00
Eike Rathke
f9e35b0b83 Update to 115.16.0 2024-10-10 15:57:37 +02:00
Eike Rathke
409b6fd78f Update to 115.15.0 2024-09-05 17:11:17 +02:00
Eike Rathke
b5c3c6f4c7 Merge remote-tracking branch 'origin/f40' into f39 2024-08-06 19:03:58 +02:00
Eike Rathke
f1c002ab45 Update to 115.14.0 2024-08-06 18:56:29 +02:00
Eike Rathke
f211258ae6 Merge remote-tracking branch 'origin/rawhide' into f39 2024-07-17 12:06:12 +02:00
Eike Rathke
1009b00bdf Merge remote-tracking branch 'origin/rawhide' into f40 2024-07-17 12:05:49 +02:00
Eike Rathke
d130401c56 Merge remote-tracking branch 'origin/rawhide' into f39 2024-06-19 12:27:29 +02:00
Eike Rathke
c9712f8c61 Merge remote-tracking branch 'origin/rawhide' into f40 2024-06-19 12:27:07 +02:00
Eike Rathke
66de1530e3 Merge remote-tracking branch 'origin/rawhide' into f39 2024-06-12 15:27:13 +02:00
Eike Rathke
ed74204de3 Merge remote-tracking branch 'origin/rawhide' into f40 2024-06-12 15:26:52 +02:00
Eike Rathke
edbd52d41a Merge remote-tracking branch 'origin/rawhide' into f39 2024-06-03 12:33:24 +02:00
Eike Rathke
19e42eccf0 Merge remote-tracking branch 'origin/rawhide' into f40 2024-06-03 12:33:05 +02:00
Eike Rathke
e734d67afb Merge remote-tracking branch 'origin/rawhide' into f39 2024-05-29 16:29:02 +02:00
Eike Rathke
8b1e54473d Merge remote-tracking branch 'origin/rawhide' into f40 2024-05-29 16:28:43 +02:00
Eike Rathke
b69b7b63c1 Merge remote-tracking branch 'origin/rawhide' into f39 2024-05-29 15:37:10 +02:00
Eike Rathke
19bb04a54e Merge remote-tracking branch 'origin/rawhide' into f40 2024-05-29 15:36:54 +02:00
Eike Rathke
3697715cec Merge remote-tracking branch 'origin/rawhide' into f39 2024-05-29 13:49:56 +02:00
Eike Rathke
1a3e6866b0 Merge remote-tracking branch 'origin/rawhide' into f40 2024-05-29 13:49:40 +02:00
Eike Rathke
d94795ceb5 Merge branch 'rawhide' into f39 2024-05-27 23:45:34 +02:00
Eike Rathke
e8dc44af94 Merge branch 'rawhide' into f40 2024-05-27 23:44:48 +02:00
Eike Rathke
85c61452cc Merge branch 'rawhide' into f39 2024-05-27 19:57:13 +02:00
Eike Rathke
3d21c36eea Merge branch 'rawhide' into f40 2024-05-27 19:55:30 +02:00
Eike Rathke
49c18ba984 Merge remote-tracking branch 'origin/rawhide' into f39 2024-05-15 20:44:58 +02:00
Eike Rathke
49a2687ab6 Merge remote-tracking branch 'origin/rawhide' into f40 2024-05-15 20:44:35 +02:00
Eike Rathke
88d7616f11 Merge remote-tracking branch 'origin/rawhide' into f39 2024-05-14 16:02:08 +02:00
Eike Rathke
2cfab527d1 Merge remote-tracking branch 'origin/rawhide' into f40 2024-05-14 16:01:47 +02:00
Jan Horak
8b62c3382a Merge branch 'main' into f39 2024-04-23 13:42:55 +02:00
Jan Horak
b53aa7bc9d Merge branch 'main' into f40 2024-04-23 13:42:23 +02:00
Jan Horak
ef564ffb30 Merge branch 'main' into f39 2024-04-23 08:42:46 +02:00
Jan Horak
1bc7123ecf Merge branch 'main' into f40 2024-04-23 08:42:20 +02:00
Eike Rathke
068e56522a Merge remote-tracking branch 'origin/rawhide' into f39 2024-04-23 00:18:34 +02:00
Eike Rathke
2278b9fed2 Merge remote-tracking branch 'origin/rawhide' into f40 2024-04-23 00:18:14 +02:00
Eike Rathke
848321e9d1 Merge remote-tracking branch 'origin/rawhide' into f39 2024-04-22 12:23:10 +02:00
Eike Rathke
9dd8d34354 Merge remote-tracking branch 'origin/rawhide' into f40 2024-04-22 12:22:48 +02:00
Eike Rathke
cb4f2b4f76 Merge remote-tracking branch 'origin/rawhide' into f39 2024-04-16 21:25:57 +02:00
Eike Rathke
ec8e3a6ad7 Merge remote-tracking branch 'origin/rawhide' into f40 2024-04-16 21:22:09 +02:00
Eike Rathke
f1f41a6dcf Update to 115.9.0
Fix expat CVE-2023-52425
2024-03-19 14:15:09 +01:00
32 changed files with 381 additions and 723 deletions

78
.gitignore vendored
View file

@ -458,73 +458,11 @@ thunderbird-langpacks-3.1.2-20100803.tar.bz2
/thunderbird-langpacks-115.12.1-20240618.tar.xz
/thunderbird-115.13.0.source.tar.xz
/thunderbird-langpacks-115.13.0-20240716.tar.xz
/thunderbird-128.0esr.source.tar.xz
/thunderbird-langpacks-128.0esr-20240717.tar.xz
/thunderbird-128.1.0esr.source.tar.xz
/thunderbird-langpacks-128.1.0esr-20240806.tar.xz
/thunderbird-128.2.0esr.source.tar.xz
/thunderbird-langpacks-128.2.0esr-20240905.tar.xz
/thunderbird-128.3.0esr.source.tar.xz
/thunderbird-langpacks-128.3.0esr-20240930.tar.xz
/thunderbird-128.3.1esr.source.tar.xz
/thunderbird-langpacks-128.3.1esr-20241009.tar.xz
/thunderbird-128.3.2esr.source.tar.xz
/thunderbird-langpacks-128.3.2esr-20241017.tar.xz
/thunderbird-128.3.3esr.source.tar.xz
/thunderbird-langpacks-128.3.3esr-20241022.tar.xz
/thunderbird-128.4.0esr.source.tar.xz
/thunderbird-langpacks-128.4.0esr-20241028.tar.xz
/thunderbird-128.4.2esr.source.tar.xz
/thunderbird-langpacks-128.4.2esr-20241107.tar.xz
/thunderbird-128.4.3esr.source.tar.xz
/thunderbird-langpacks-128.4.3esr-20241113.tar.xz
/thunderbird-128.5.0esr.source.tar.xz
/thunderbird-langpacks-128.5.0esr-20241126.tar.xz
/thunderbird-128.5.2esr.source.tar.xz
/thunderbird-langpacks-128.5.2esr-20241211.tar.xz
/thunderbird-128.6.0esr.source.tar.xz
/thunderbird-langpacks-128.6.0esr-20250108.tar.xz
/thunderbird-128.6.1esr.source.tar.xz
/thunderbird-langpacks-128.6.1esr-20250128.tar.xz
/thunderbird-128.7.1esr.source.tar.xz
/thunderbird-langpacks-128.7.1esr-20250219.tar.xz
/thunderbird-128.8.0esr.source.tar.xz
/thunderbird-langpacks-128.8.0esr-20250305.tar.xz
/thunderbird-128.9.0esr.source.tar.xz
/thunderbird-langpacks-128.9.0esr-20250331.tar.xz
/thunderbird-128.9.2esr.source.tar.xz
/thunderbird-langpacks-128.9.2esr-20250416.tar.xz
/thunderbird-128.10.0esr.source.tar.xz
/thunderbird-langpacks-128.10.0esr-20250428.tar.xz
/thunderbird-128.10.1esr.source.tar.xz
/thunderbird-langpacks-128.10.1esr-20250519.tar.xz
/thunderbird-128.10.2esr.source.tar.xz
/thunderbird-langpacks-128.10.2esr-20250521.tar.xz
/thunderbird-128.11.0esr.source.tar.xz
/thunderbird-langpacks-128.11.0esr-20250526.tar.xz
/thunderbird-128.11.1esr.source.tar.xz
/thunderbird-langpacks-128.11.1esr-20250611.tar.xz
/thunderbird-128.12.0esr.source.tar.xz
/thunderbird-langpacks-128.12.0esr-20250630.tar.xz
/thunderbird-128.13.0esr.source.tar.xz
/thunderbird-langpacks-128.13.0esr-20250723.tar.xz
/thunderbird-140.1.0esr.source.tar.xz
/thunderbird-langpacks-140.1.0esr-20250731.tar.xz
/thunderbird-140.2.1esr.source.tar.xz
/thunderbird-langpacks-140.2.1esr-20250904.tar.xz
/thunderbird-langpacks-140.3.0esr-20250924.tar.xz
/thunderbird-140.3.0esr.source.tar.xz
/thunderbird-143.0.1.source.tar.xz
/thunderbird-langpacks-143.0.1-20251002.tar.xz
/thunderbird-144.0.source.tar.xz
/thunderbird-langpacks-144.0-20251016.tar.xz
/thunderbird-144.0.1.source.tar.xz
/thunderbird-langpacks-144.0.1-20251021.tar.xz
/thunderbird-145.0.source.tar.xz
/thunderbird-langpacks-145.0-20251119.tar.xz
/thunderbird-146.0.source.tar.xz
/thunderbird-langpacks-146.0-20251215.tar.xz
/thunderbird-146.0.1.source.tar.xz
/thunderbird-langpacks-146.0.1-20251218.tar.xz
/thunderbird-147.0.source.tar.xz
/thunderbird-langpacks-147.0-20260114.tar.xz
/thunderbird-115.14.0.source.tar.xz
/thunderbird-langpacks-115.14.0-20240805.tar.xz
/thunderbird-115.15.0.source.tar.xz
/thunderbird-langpacks-115.15.0-20240905.tar.xz
/thunderbird-115.16.0esr.source.tar.xz
/thunderbird-langpacks-115.16.0esr-20241010.tar.xz
/thunderbird-115.16.1.source.tar.xz
/thunderbird-langpacks-115.16.1-20241030.tar.xz

View file

@ -1,10 +1,30 @@
diff -up thunderbird-128.1.0/build/unix/stdc++compat/stdc++compat.cpp.0001-GLIBCXX-fix-for-GCC-12 thunderbird-128.1.0/build/unix/stdc++compat/stdc++compat.cpp
--- thunderbird-128.1.0/build/unix/stdc++compat/stdc++compat.cpp.0001-GLIBCXX-fix-for-GCC-12 2024-08-09 12:24:05.444162943 +0200
+++ thunderbird-128.1.0/build/unix/stdc++compat/stdc++compat.cpp 2024-08-09 12:24:05.460162972 +0200
@@ -83,6 +83,19 @@ __glibcxx_assert_fail(const char* __file
From efd5bc0715e5477318be95a76811cda0a89e8289 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Emilio=20Cobos=20=C3=81lvarez?= <emilio@crisal.io>
Date: Fri, 4 Mar 2022 12:00:26 +0100
Subject: [PATCH] GLIBCXX fix for GCC 12?
Borrowed from Firefox and adjusted to Thunderbird 91.7.0
---
build/unix/stdc++compat/stdc++compat.cpp | 14 ++++++++++++++
1 file changed, 14 insertions(+)
diff --git a/build/unix/stdc++compat/stdc++compat.cpp b/build/unix/stdc++compat/stdc++compat.cpp
--- thunderbird-91.7.0/build/unix/stdc++compat/stdc++compat.cpp.0001-GLIBCXX-fix-for-GCC-12 2022-03-07 20:34:15.000000000 +0100
+++ thunderbird-91.7.0/build/unix/stdc++compat/stdc++compat.cpp 2022-03-15 22:50:03.161345590 +0100
@@ -24,6 +24,7 @@
GLIBCXX_3.4.27 is from gcc 10
GLIBCXX_3.4.28 is from gcc 10
GLIBCXX_3.4.29 is from gcc 11
+ GLIBCXX_3.4.30 is from gcc 12
This file adds the necessary compatibility tricks to avoid symbols with
version GLIBCXX_3.4.20 and bigger, keeping binary compatibility with
@@ -73,6 +74,19 @@ void __attribute__((weak)) __throw_bad_a
} // namespace std
#endif
+
+#if _GLIBCXX_RELEASE >= 12
+namespace std {
+
@ -17,7 +37,6 @@ diff -up thunderbird-128.1.0/build/unix/stdc++compat/stdc++compat.cpp.0001-GLIBC
+
+} // namespace std
+#endif
+
#if MOZ_LIBSTDCXX_VERSION >= GLIBCXX_VERSION(3, 4, 21)
/* While we generally don't build with exceptions, we have some host tools
* that do use them. libstdc++ from GCC 5.0 added exception constructors with
* char const* argument. Older versions only have a constructor with

View file

@ -0,0 +1,12 @@
diff -up thunderbird-60.5.0/mfbt/LinuxSignal.h.mozilla-1238661 thunderbird-60.5.0/mfbt/LinuxSignal.h
--- thunderbird-60.5.0/mfbt/LinuxSignal.h.mozilla-1238661 2019-01-30 11:33:21.447003175 +0100
+++ thunderbird-60.5.0/mfbt/LinuxSignal.h 2019-01-30 11:35:13.848537051 +0100
@@ -22,7 +22,7 @@ __attribute__((naked)) void SignalTrampo
void* aContext) {
asm volatile("nop; nop; nop; nop" : : : "memory");
- asm volatile("b %0" : : "X"(H) : "memory");
+ asm volatile("bx %0" : : "r"(H), "l"(aSignal), "l"(aInfo), "l"(aContext) : "memory");
}
#define MOZ_SIGNAL_TRAMPOLINE(h) (mozilla::SignalTrampoline<h>)

View file

@ -1,35 +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);

View file

@ -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"

View file

@ -1,12 +0,0 @@
diff -up thunderbird-147.0/comm/third_party/openpgp.configure.build-botan thunderbird-147.0/comm/third_party/openpgp.configure
--- thunderbird-147.0/comm/third_party/openpgp.configure.build-botan 2026-01-08 22:45:29.000000000 +0100
+++ thunderbird-147.0/comm/third_party/openpgp.configure 2026-01-14 15:43:34.946025500 +0100
@@ -348,7 +348,7 @@ with only_when(in_tree_librnp):
botan_flags = [
"--cc-bin={}".format(cxx_compiler.compiler),
- "--cc-abi-flags={}".format(" ".join(abi_flags)),
+ #"--cc-abi-flags={}".format(" ".join(abi_flags)),
"--cpu={}".format(target.cpu),
"--os={}".format(botan_os),
"--with-build-dir={}".format(botan_objdir),

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -1,51 +0,0 @@
diff -up firefox-55.0/js/src/jit/MIR.h.old firefox-55.0/js/src/jit/MIR.h
--- firefox-55.0/js/src/jit/MIR.h.old 2017-08-08 14:04:44.528460099 +0200
+++ firefox-55.0/js/src/jit/MIR.h 2017-08-08 14:05:11.045364831 +0200
@@ -12434,7 +12434,7 @@ class MNearbyInt
TRIVIAL_NEW_WRAPPERS
static bool HasAssemblerSupport(RoundingMode mode) {
- return Assembler::HasRoundInstruction(mode);
+ return false;
}
RoundingMode roundingMode() const { return roundingMode_; }
diff -up firefox-55.0/js/src/jit/ExecutableAllocator.h.old firefox-55.0/js/src/jit/ExecutableAllocator.h
--- firefox-55.0/js/src/jit/ExecutableAllocator.h.old 2017-08-09 09:24:18.784983505 +0200
+++ firefox-55.0/js/src/jit/ExecutableAllocator.h 2017-08-09 09:28:01.471100075 +0200
@@ -307,6 +307,10 @@ class ExecutableAllocator
{
sync_instruction_memory((caddr_t)code, size);
}
+#else
+ static void cacheFlush(void*, size_t)
+ {
+ }
#endif
private:
diff -up firefox-55.0/js/src/wasm/WasmBuiltins.cpp.old firefox-55.0/js/src/wasm/WasmBuiltins.cpp
--- firefox-55.0/js/src/wasm/WasmBuiltins.cpp.old 2017-08-09 12:50:46.877450765 +0200
+++ firefox-55.0/js/src/wasm/WasmBuiltins.cpp 2017-08-09 12:50:59.725406974 +0200
@@ -881,7 +881,6 @@ wasm::EnsureBuiltinThunksInitialized()
MOZ_ASSERT(!masm.numSymbolicAccesses());
#endif
- ExecutableAllocator::cacheFlush(thunks->codeBase, thunks->codeSize);
if (!ExecutableAllocator::makeExecutable(thunks->codeBase, thunks->codeSize))
return false;
diff -up firefox-55.0/js/src/wasm/WasmCode.cpp.old firefox-55.0/js/src/wasm/WasmCode.cpp
--- firefox-55.0/js/src/wasm/WasmCode.cpp.old 2017-08-09 12:50:37.205483731 +0200
+++ firefox-55.0/js/src/wasm/WasmCode.cpp 2017-08-09 12:51:10.365370708 +0200
@@ -287,8 +287,6 @@ CodeSegment::initialize(Tier tier,
if (!StaticallyLink(*this, linkData))
return false;
- ExecutableAllocator::cacheFlush(bytes_.get(), RoundupCodeLength(codeLength));
-
// Reprotect the whole region to avoid having separate RW and RX mappings.
if (!ExecutableAllocator::makeExecutable(bytes_.get(), RoundupCodeLength(codeLength)))
return false;
diff -up firefox-55.0/media/libyuv/libyuv/tools_libyuv/autoroller/unittests/testdata/DEPS.chromium.old firefox-55.0/media/libyuv/libyuv/tools_libyuv/autoroller/unittests/testdata/DEPS.chromium
diff -up firefox-55.0/media/webrtc/trunk/Makefile.old firefox-55.0/media/webrtc/trunk/Makefile

View file

@ -1,25 +0,0 @@
diff -up firefox-55.0/build/moz.configure/rust.configure.rust-ppc64le firefox-55.0/build/moz.configure/rust.configure
--- firefox-55.0/build/moz.configure/rust.configure.rust-ppc64le 2017-07-31 18:20:49.000000000 +0200
+++ firefox-55.0/build/moz.configure/rust.configure 2017-08-02 10:19:03.254220003 +0200
@@ -151,6 +151,9 @@ def rust_triple_alias(host_or_target):
('sparc64', 'Linux'): 'sparc64-unknown-linux-gnu',
('x86', 'Linux'): 'i686-unknown-linux-gnu',
('x86_64', 'Linux'): 'x86_64-unknown-linux-gnu',
+ ('ppc64le', 'Linux'): 'powerpc64le-unknown-linux-gnu',
+ ('ppc64', 'Linux'): 'powerpc64-unknown-linux-gnu',
+ ('s390x', 'Linux'): 's390x-unknown-linux-gnu',
# OS X
('x86', 'OSX'): 'i686-apple-darwin',
('x86_64', 'OSX'): 'x86_64-apple-darwin',
@@ -174,8 +177,10 @@ def rust_triple_alias(host_or_target):
('sparc64', 'SunOS'): 'sparcv9-sun-solaris',
}.get((host_or_target.cpu, os_or_kernel), None)
+ if (rustc_target == 'powerpc64-unknown-linux-gnu' and host_or_target.endianness == 'little'):
+ rustc_target = 'powerpc64le-unknown-linux-gnu'
if rustc_target is None:
- die("Don't know how to translate {} for rustc".format(host_or_target.alias))
+ die("Don't know how to translate {} for rustc, cpu: {}, os: {}".format(target.alias, target.cpu, os_or_kernel))
# Check to see whether our rustc has a reasonably functional stdlib
# for our chosen target.

View file

@ -1,12 +0,0 @@
diff -up thunderbird-128.9.2/toolkit/components/protobuf/src/google/protobuf/port_def.inc.orig thunderbird-128.9.2/toolkit/components/protobuf/src/google/protobuf/port_def.inc
--- thunderbird-128.9.2/toolkit/components/protobuf/src/google/protobuf/port_def.inc.orig 2025-04-24 14:10:37.830416804 +0000
+++ thunderbird-128.9.2/toolkit/components/protobuf/src/google/protobuf/port_def.inc 2025-04-24 14:11:31.910416804 +0000
@@ -255,7 +255,7 @@
#error PROTOBUF_TAILCALL was previously defined
#endif
#if __has_cpp_attribute(clang::musttail) && !defined(__arm__) && \
- !defined(_ARCH_PPC) && !defined(__wasm__) && \
+ !defined(_ARCH_PPC) && !defined(__s390x__) && !defined(__wasm__) && \
!(defined(_MSC_VER) && defined(_M_IX86)) && \
!(defined(__NDK_MAJOR__) && __NDK_MAJOR <= 24)
# ifndef PROTO2_OPENSOURCE

View file

@ -1,11 +0,0 @@
diff -up thunderbird-145.0/security/sandbox/chromium/sandbox/linux/system_headers/linux_seccomp.h.seccomp thunderbird-145.0/security/sandbox/chromium/sandbox/linux/system_headers/linux_seccomp.h
--- thunderbird-145.0/security/sandbox/chromium/sandbox/linux/system_headers/linux_seccomp.h.seccomp 2025-12-09 13:42:31.378958842 +0100
+++ thunderbird-145.0/security/sandbox/chromium/sandbox/linux/system_headers/linux_seccomp.h 2025-12-09 13:42:37.886937626 +0100
@@ -6,6 +6,7 @@
#define SANDBOX_LINUX_SYSTEM_HEADERS_LINUX_SECCOMP_H_
#include <stdint.h>
+#include <signal.h>
#include <sys/ioctl.h>
#include "build/build_config.h"

View file

@ -0,0 +1,49 @@
diff -up thunderbird-91.7.0/parser/expat/lib/xmltok.c.expat-CVE-2022-25235 thunderbird-91.7.0/parser/expat/lib/xmltok.c
--- thunderbird-91.7.0/parser/expat/lib/xmltok.c.expat-CVE-2022-25235 2022-03-02 17:57:38.364361168 +0100
+++ thunderbird-91.7.0/parser/expat/lib/xmltok.c 2022-03-02 17:58:22.235512399 +0100
@@ -65,13 +65,6 @@
+ ((((byte)[2]) >> 5) & 1)] \
& (1u << (((byte)[2]) & 0x1F)))
-#define UTF8_GET_NAMING(pages, p, n) \
- ((n) == 2 \
- ? UTF8_GET_NAMING2(pages, (const unsigned char *)(p)) \
- : ((n) == 3 \
- ? UTF8_GET_NAMING3(pages, (const unsigned char *)(p)) \
- : 0))
-
/* Detection of invalid UTF-8 sequences is based on Table 3.1B
of Unicode 3.2: http://www.unicode.org/unicode/reports/tr28/
with the additional restriction of not allowing the Unicode
diff -up thunderbird-91.7.0/parser/expat/lib/xmltok_impl.c.expat-CVE-2022-25235 thunderbird-91.7.0/parser/expat/lib/xmltok_impl.c
--- thunderbird-91.7.0/parser/expat/lib/xmltok_impl.c.expat-CVE-2022-25235 2022-03-02 17:57:38.365361172 +0100
+++ thunderbird-91.7.0/parser/expat/lib/xmltok_impl.c 2022-03-02 18:04:51.240853247 +0100
@@ -34,7 +34,7 @@
case BT_LEAD ## n: \
if (end - ptr < n) \
return XML_TOK_PARTIAL_CHAR; \
- if (!IS_NAME_CHAR(enc, ptr, n)) { \
+ if (IS_INVALID_CHAR(enc, ptr, n) || ! IS_NAME_CHAR(enc, ptr, n)) { \
*nextTokPtr = ptr; \
return XML_TOK_INVALID; \
} \
@@ -62,7 +62,7 @@
case BT_LEAD ## n: \
if (end - ptr < n) \
return XML_TOK_PARTIAL_CHAR; \
- if (!IS_NMSTRT_CHAR(enc, ptr, n)) { \
+ if (IS_INVALID_CHAR(enc, ptr, n) || ! IS_NMSTRT_CHAR(enc, ptr, n)) { \
*nextTokPtr = ptr; \
return XML_TOK_INVALID; \
} \
@@ -1090,6 +1090,10 @@ PREFIX(prologTok)(const ENCODING *enc, c
case BT_LEAD ## n: \
if (end - ptr < n) \
return XML_TOK_PARTIAL_CHAR; \
+ if (IS_INVALID_CHAR(enc, ptr, n)) { \
+ *nextTokPtr = ptr; \
+ return XML_TOK_INVALID; \
+ } \
if (IS_NMSTRT_CHAR(enc, ptr, n)) { \
ptr += n; \
tok = XML_TOK_NAME; \

View file

@ -0,0 +1,40 @@
diff -up thunderbird-91.7.0/parser/expat/lib/xmlparse.c.expat-CVE-2022-25236 thunderbird-91.7.0/parser/expat/lib/xmlparse.c
--- thunderbird-91.7.0/parser/expat/lib/xmlparse.c.expat-CVE-2022-25236 2022-03-02 18:08:40.085642028 +0100
+++ thunderbird-91.7.0/parser/expat/lib/xmlparse.c 2022-03-02 18:13:31.838667958 +0100
@@ -700,8 +700,7 @@ XML_ParserCreate(const XML_Char *encodin
XML_Parser XMLCALL
XML_ParserCreateNS(const XML_Char *encodingName, XML_Char nsSep)
{
- XML_Char tmp[2];
- *tmp = nsSep;
+ XML_Char tmp[2] = {nsSep, 0};
return XML_ParserCreate_MM(encodingName, NULL, tmp);
}
#endif
@@ -1276,8 +1275,7 @@ XML_ExternalEntityParserCreate(XML_Parse
would be otherwise.
*/
if (ns) {
- XML_Char tmp[2];
- *tmp = namespaceSeparator;
+ XML_Char tmp[2] = {parser->m_namespaceSeparator, 0};
parser = parserCreate(encodingName, &parser->m_mem, tmp, newDtd);
}
else {
@@ -3667,6 +3665,16 @@ addBinding(XML_Parser parser, PREFIX *pr
if (!mustBeXML && isXMLNS
&& (len > xmlnsLen || uri[len] != xmlnsNamespace[len]))
isXMLNS = XML_FALSE;
+ // NOTE: While Expat does not validate namespace URIs against RFC 3986,
+ // we have to at least make sure that the XML processor on top of
+ // Expat (that is splitting tag names by namespace separator into
+ // 2- or 3-tuples (uri-local or uri-local-prefix)) cannot be confused
+ // by an attacker putting additional namespace separator characters
+ // into namespace declarations. That would be ambiguous and not to
+ // be expected.
+ if (parser->m_ns && (uri[len] == parser->m_namespaceSeparator)) {
+ return XML_ERROR_SYNTAX;
+ }
}
isXML = isXML && len == xmlLen;
isXMLNS = isXMLNS && len == xmlnsLen;

View file

@ -0,0 +1,24 @@
diff -up thunderbird-91.7.0/parser/expat/lib/xmlparse.c.expat-CVE-2022-25315 thunderbird-91.7.0/parser/expat/lib/xmlparse.c
--- thunderbird-91.7.0/parser/expat/lib/xmlparse.c.expat-CVE-2022-25315 2022-03-02 18:17:50.966583254 +0100
+++ thunderbird-91.7.0/parser/expat/lib/xmlparse.c 2022-03-02 18:19:27.636924735 +0100
@@ -2479,6 +2479,7 @@ storeRawNames(XML_Parser parser)
while (tag) {
int bufSize;
int nameLen = sizeof(XML_Char) * (tag->name.strLen + 1);
+ size_t rawNameLen;
char *rawNameBuf = tag->buf + nameLen;
/* Stop if already stored. Since tagStack is a stack, we can stop
at the first entry that has already been copied; everything
@@ -2490,7 +2491,11 @@ storeRawNames(XML_Parser parser)
/* For re-use purposes we need to ensure that the
size of tag->buf is a multiple of sizeof(XML_Char).
*/
- bufSize = nameLen + ROUND_UP(tag->rawNameLength, sizeof(XML_Char));
+ rawNameLen = ROUND_UP(tag->rawNameLength, sizeof(XML_Char));
+ /* Detect and prevent integer overflow. */
+ if (rawNameLen > (size_t)INT_MAX - nameLen)
+ return XML_FALSE;
+ bufSize = nameLen + (int)rawNameLen;
if (bufSize > tag->bufEnd - tag->buf) {
char *temp = (char *)REALLOC(tag->buf, bufSize);
if (temp == NULL)

View file

@ -1,24 +0,0 @@
--- firefox-109.0.1/gfx/2d/Rect.h.old 2023-02-07 09:44:24.946279843 +0100
+++ firefox-109.0.1/gfx/2d/Rect.h 2023-02-07 09:44:47.969032049 +0100
@@ -324,8 +324,8 @@ IntRectTyped<Units> RoundedToInt(const R
template <class Units>
bool RectIsInt32Safe(const RectTyped<Units>& aRect) {
- float min = (float)std::numeric_limits<std::int32_t>::min();
- float max = (float)std::numeric_limits<std::int32_t>::max();
+ float min = (float)std::numeric_limits<int32_t>::min();
+ float max = (float)std::numeric_limits<int32_t>::max();
return aRect.x > min && aRect.y > min && aRect.width < max &&
aRect.height < max && aRect.XMost() < max && aRect.YMost() < max;
}
diff -up firefox-109.0.1/toolkit/components/telemetry/pingsender/pingsender.cpp.old firefox-109.0.1/toolkit/components/telemetry/pingsender/pingsender.cpp
--- firefox-109.0.1/toolkit/components/telemetry/pingsender/pingsender.cpp.old 2023-02-07 11:03:41.788720090 +0100
+++ firefox-109.0.1/toolkit/components/telemetry/pingsender/pingsender.cpp 2023-02-07 11:04:29.195345659 +0100
@@ -10,6 +10,7 @@
#include <iomanip>
#include <string>
#include <vector>
+#include <cstdint>
#include <zlib.h>

View file

@ -1,39 +0,0 @@
diff -up thunderbird-128.1.0/toolkit/crashreporter/google-breakpad/src/third_party/lss/linux_syscall_support.h.firefox-gcc-build thunderbird-128.1.0/toolkit/crashreporter/google-breakpad/src/third_party/lss/linux_syscall_support.h
--- thunderbird-128.1.0/toolkit/crashreporter/google-breakpad/src/third_party/lss/linux_syscall_support.h.firefox-gcc-build 2024-07-31 19:13:21.000000000 +0200
+++ thunderbird-128.1.0/toolkit/crashreporter/google-breakpad/src/third_party/lss/linux_syscall_support.h 2024-08-08 16:03:45.639263256 +0200
@@ -1962,7 +1962,7 @@ struct kernel_statfs {
LSS_ENTRYPOINT \
"pop %%ebx" \
args \
- : "esp", "memory"); \
+ : "memory"); \
LSS_RETURN(type,__res)
#undef _syscall0
#define _syscall0(type,name) \
@@ -2019,7 +2019,7 @@ struct kernel_statfs {
: "i" (__NR_##name), "ri" ((long)(arg1)), \
"c" ((long)(arg2)), "d" ((long)(arg3)), \
"S" ((long)(arg4)), "D" ((long)(arg5)) \
- : "esp", "memory"); \
+ : "memory"); \
LSS_RETURN(type,__res); \
}
#undef _syscall6
@@ -2041,7 +2041,7 @@ struct kernel_statfs {
: "i" (__NR_##name), "0" ((long)(&__s)), \
"c" ((long)(arg2)), "d" ((long)(arg3)), \
"S" ((long)(arg4)), "D" ((long)(arg5)) \
- : "esp", "memory"); \
+ : "memory"); \
LSS_RETURN(type,__res); \
}
LSS_INLINE int LSS_NAME(clone)(int (*fn)(void *), void *child_stack,
@@ -2127,7 +2127,7 @@ struct kernel_statfs {
: "0"(-EINVAL), "i"(__NR_clone),
"m"(fn), "m"(child_stack), "m"(flags), "m"(arg),
"m"(parent_tidptr), "m"(newtls), "m"(child_tidptr)
- : "esp", "memory", "ecx", "edx", "esi", "edi");
+ : "memory", "ecx", "edx", "esi", "edi");
LSS_RETURN(int, __res);
}

View file

@ -1,12 +0,0 @@
diff -up firefox-105.0/mozglue/misc/SIMD_avx2.cpp.old firefox-105.0/mozglue/misc/SIMD_avx2.cpp
--- firefox-105.0/mozglue/misc/SIMD_avx2.cpp.old 2022-09-22 21:35:07.006221995 +0200
+++ firefox-105.0/mozglue/misc/SIMD_avx2.cpp 2022-09-22 21:36:12.972480517 +0200
@@ -55,7 +55,7 @@ __m256i CmpEq256(__m256i a, __m256i b) {
return _mm256_cmpeq_epi64(a, b);
}
-# if defined(__GNUC__) && !defined(__clang__)
+# if 0
// See the comment in SIMD.cpp over Load32BitsIntoXMM. This is just adapted
// from that workaround. Testing this, it also yields the correct instructions

View file

@ -12,7 +12,7 @@ to be used with 'cargo vendor' commmand.
"""
[dependencies]
cbindgen = "0.29.1"
cbindgen = "0.24.3"
[[bin]]
name = "dummy"

View file

@ -1,6 +1,6 @@
diff -up firefox-140.0/extensions/pref/autoconfig/src/nsReadConfig.cpp.mozilla-bmo1170092 firefox-140.0/extensions/pref/autoconfig/src/nsReadConfig.cpp
--- firefox-140.0/extensions/pref/autoconfig/src/nsReadConfig.cpp.mozilla-bmo1170092 2025-06-02 15:26:44.000000000 +0200
+++ firefox-140.0/extensions/pref/autoconfig/src/nsReadConfig.cpp 2025-06-04 13:24:00.344728697 +0200
diff -up firefox-115.0.2/extensions/pref/autoconfig/src/nsReadConfig.cpp.1170092 firefox-115.0.2/extensions/pref/autoconfig/src/nsReadConfig.cpp
--- firefox-115.0.2/extensions/pref/autoconfig/src/nsReadConfig.cpp.1170092 2023-07-10 21:08:53.000000000 +0200
+++ firefox-115.0.2/extensions/pref/autoconfig/src/nsReadConfig.cpp 2023-07-17 10:33:23.443355156 +0200
@@ -263,8 +263,20 @@ nsresult nsReadConfig::openAndEvaluateJS
if (NS_FAILED(rv)) return rv;
@ -23,10 +23,10 @@ diff -up firefox-140.0/extensions/pref/autoconfig/src/nsReadConfig.cpp.mozilla-b
} else {
nsAutoCString location("resource://gre/defaults/autoconfig/");
location += aFileName;
diff -up firefox-140.0/modules/libpref/Preferences.cpp.mozilla-bmo1170092 firefox-140.0/modules/libpref/Preferences.cpp
--- firefox-140.0/modules/libpref/Preferences.cpp.mozilla-bmo1170092 2025-06-02 15:26:51.000000000 +0200
+++ firefox-140.0/modules/libpref/Preferences.cpp 2025-06-04 13:24:00.345430064 +0200
@@ -4914,6 +4914,9 @@ nsresult Preferences::InitInitialObjects
diff -up firefox-115.0.2/modules/libpref/Preferences.cpp.1170092 firefox-115.0.2/modules/libpref/Preferences.cpp
--- firefox-115.0.2/modules/libpref/Preferences.cpp.1170092 2023-07-10 21:09:00.000000000 +0200
+++ firefox-115.0.2/modules/libpref/Preferences.cpp 2023-07-17 10:33:23.444355156 +0200
@@ -4825,6 +4825,9 @@ nsresult Preferences::InitInitialObjects
//
// Thus, in the omni.jar case, we always load app-specific default
// preferences from omni.jar, whether or not `$app == $gre`.
@ -36,10 +36,10 @@ diff -up firefox-140.0/modules/libpref/Preferences.cpp.mozilla-bmo1170092 firefo
nsresult rv = NS_ERROR_FAILURE;
UniquePtr<nsZipFind> find;
diff -up firefox-140.0/toolkit/xre/nsXREDirProvider.cpp.mozilla-bmo1170092 firefox-140.0/toolkit/xre/nsXREDirProvider.cpp
--- firefox-140.0/toolkit/xre/nsXREDirProvider.cpp.mozilla-bmo1170092 2025-06-02 15:27:00.000000000 +0200
+++ firefox-140.0/toolkit/xre/nsXREDirProvider.cpp 2025-06-04 15:44:09.413562326 +0200
@@ -76,6 +76,7 @@
diff -up firefox-115.0.2/toolkit/xre/nsXREDirProvider.cpp.1170092 firefox-115.0.2/toolkit/xre/nsXREDirProvider.cpp
--- firefox-115.0.2/toolkit/xre/nsXREDirProvider.cpp.1170092 2023-07-10 22:57:20.000000000 +0200
+++ firefox-115.0.2/toolkit/xre/nsXREDirProvider.cpp 2023-07-17 10:56:25.309692121 +0200
@@ -72,6 +72,7 @@
#endif
#ifdef XP_UNIX
# include <ctype.h>
@ -47,7 +47,7 @@ diff -up firefox-140.0/toolkit/xre/nsXREDirProvider.cpp.mozilla-bmo1170092 firef
#endif
#ifdef XP_IOS
# include "UIKitDirProvider.h"
@@ -462,6 +463,17 @@ nsXREDirProvider::GetFile(const char* aP
@@ -478,6 +479,17 @@ nsXREDirProvider::GetFile(const char* aP
rv = file->AppendNative(nsLiteralCString(PREF_OVERRIDE_DIRNAME));
NS_ENSURE_SUCCESS(rv, rv);
rv = EnsureDirectoryExists(file);
@ -60,12 +60,12 @@ diff -up firefox-140.0/toolkit/xre/nsXREDirProvider.cpp.mozilla-bmo1170092 firef
+ appInfo->GetName(appName);
+ ToLowerCase(appName);
+ sysConfigDir.Append(appName);
+ NS_NewNativeLocalFile(sysConfigDir, getter_AddRefs(file));
+ NS_NewNativeLocalFile(sysConfigDir, false, getter_AddRefs(file));
+ rv = EnsureDirectoryExists(file);
} else {
// We don't know anything about this property. Fail without warning, because
// otherwise we'll get too much warning spam due to
@@ -518,6 +530,16 @@ nsXREDirProvider::GetFiles(const char* a
@@ -694,6 +706,16 @@ nsXREDirProvider::GetFiles(const char* a
}
#endif
@ -82,9 +82,9 @@ diff -up firefox-140.0/toolkit/xre/nsXREDirProvider.cpp.mozilla-bmo1170092 firef
rv = NS_NewArrayEnumerator(aResult, directories, NS_GET_IID(nsIFile));
} else if (!strcmp(aProperty, NS_APP_CHROME_DIR_LIST)) {
// NS_APP_CHROME_DIR_LIST is only used to get default (native) icons
diff -up firefox-140.0/xpcom/io/nsAppDirectoryServiceDefs.h.mozilla-bmo1170092 firefox-140.0/xpcom/io/nsAppDirectoryServiceDefs.h
--- firefox-140.0/xpcom/io/nsAppDirectoryServiceDefs.h.mozilla-bmo1170092 2025-06-02 15:27:01.000000000 +0200
+++ firefox-140.0/xpcom/io/nsAppDirectoryServiceDefs.h 2025-06-04 13:24:00.346423861 +0200
diff -up firefox-115.0.2/xpcom/io/nsAppDirectoryServiceDefs.h.1170092 firefox-115.0.2/xpcom/io/nsAppDirectoryServiceDefs.h
--- firefox-115.0.2/xpcom/io/nsAppDirectoryServiceDefs.h.1170092 2023-07-10 21:09:13.000000000 +0200
+++ firefox-115.0.2/xpcom/io/nsAppDirectoryServiceDefs.h 2023-07-17 10:33:23.444355156 +0200
@@ -58,6 +58,7 @@
#define NS_APP_PREFS_DEFAULTS_DIR_LIST "PrefDL"
#define NS_APP_PREFS_OVERRIDE_DIR \

17
mozilla-1245783.patch Normal file
View file

@ -0,0 +1,17 @@
# Remove when mozbz#1269319 lands
--- firefox-45.0.1-orig/js/src/Makefile.in 2016-05-17 14:53:58.753178403 +0200
+++ firefox-45.0.1/js/src/Makefile.in 2016-05-17 14:53:28.432817862 +0200
@@ -144,6 +144,11 @@ distclean::
CFLAGS += $(MOZ_ZLIB_CFLAGS)
+# Avoid GNU gcc bug #70526
+# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70526#c14
+CFLAGS += -fno-schedule-insns2
+CXXFLAGS += -fno-schedule-insns2
+
# Silence warnings on AIX/HP-UX from non-GNU compilers
ifndef GNU_CC
ifeq ($(OS_ARCH),AIX)

12
mozilla-build-arm.patch Normal file
View file

@ -0,0 +1,12 @@
diff -up firefox-29.0/mozilla-release/gfx/ycbcr/moz.build.arm firefox-29.0/mozilla-release/gfx/ycbcr/moz.build
--- firefox-29.0/mozilla-release/gfx/ycbcr/moz.build.arm 2014-04-22 07:27:47.000000000 +0200
+++ firefox-29.0/mozilla-release/gfx/ycbcr/moz.build 2014-04-22 16:40:34.862849368 +0200
@@ -61,7 +61,7 @@ else:
'yuv_row_other.cpp',
]
-if CONFIG['CPU_ARCH'] == 'arm' and CONFIG['HAVE_ARM_NEON']:
+if CONFIG['HAVE_ARM_NEON']:
SOURCES += [
'yuv_row_arm.s',
]

View file

@ -1,59 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<component type="desktop-application">
<id>net.thunderbird.Thunderbird.appdata.xml</id>
<metadata_license>CC0-1.0</metadata_license>
<name>Thunderbird</name>
<summary>Thunderbird is a free and open source email, newsfeed, chat, and calendaring client</summary>
<description>
<!-- From https://www.thunderbird.net/en-US/about/ -->
<p>
Thunderbird is a free and open source email, newsfeed, chat, and
calendaring client, thats easy to set up and customize. One of the core
principles of Thunderbird is the use and promotion of open standards -
this focus is a rejection of our world of closed platforms and services
that cant communicate with each other. We want our users to have freedom
and choice in how they communicate.
</p>
<p>
Thunderbird is an open source project, which means anyone can contribute
ideas, designs, code, and time helping fellow users.
</p>
</description>
<categories>
<category>Calendar</category>
<category>Email</category>
<category>Office</category>
</categories>
<url type="homepage">https://www.thunderbird.net/</url>
<url type="bugtracker">https://bugzilla.mozilla.org/</url>
<url type="faq">https://support.mozilla.org/kb/thunderbird-faq/</url>
<url type="help">https://support.mozilla.org/products/thunderbird/</url>
<url type="donation">https://www.thunderbird.net/donate/</url>
<url type="translate">https://www.thunderbird.net/participate/</url>
<project_group>Mozilla</project_group>
<project_license>MPL-2.0</project_license>
<developer_name>Thunderbird Project</developer_name>
<screenshots>
<screenshot type="default">
<image>https://raw.githubusercontent.com/thunderbird/flatpak-screenshots/main/image_1.png</image>
</screenshot>
<screenshot>
<image>https://raw.githubusercontent.com/thunderbird/flatpak-screenshots/main/image_2.png</image>
</screenshot>
</screenshots>
<mimetypes>
<mimetype>message/rfc822</mimetype>
<mimetype>x-scheme-handler/mailto</mimetype>
<mimetype>text/calendar</mimetype>
<mimetype>text/vcard</mimetype>
<mimetype>text/x-vcard</mimetype>
</mimetypes>
<releases>
<release version="__VERSION__" date="__DATE__"/>
</releases>
<update_contact>jhorak@redhat.com</update_contact>
</component>

View file

@ -8,7 +8,7 @@ TryExec=thunderbird
Icon=thunderbird
Terminal=false
Type=Application
MimeType=message/rfc822;x-scheme-handler/mailto;text/calendar;text/vcard;text/x-vcard;x-scheme-handler/webcal;x-scheme-handler/webcals;x-scheme-handler/mid;
MimeType=message/rfc822;x-scheme-handler/mailto;
StartupNotify=true
Categories=Network;Email;
Name[cs]=Poštovní klient Thunderbird

View file

@ -0,0 +1,23 @@
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

12
rhbz-1354671.patch Normal file
View file

@ -0,0 +1,12 @@
diff -up firefox-60.5.0/layout/base/nsIPresShell.h.1354671 firefox-60.5.0/layout/base/nsIPresShell.h
--- firefox-60.5.0/layout/base/nsIPresShell.h.1354671 2019-01-22 16:08:40.796539950 +0100
+++ firefox-60.5.0/layout/base/nsIPresShell.h 2019-01-22 16:10:25.106069228 +0100
@@ -204,7 +204,7 @@ class nsIPresShell : public nsStubDocume
* to the same aSize value. AllocateFrame is infallible and will abort
* on out-of-memory.
*/
- void* AllocateFrame(nsQueryFrame::FrameIID aID, size_t aSize) {
+ void* __attribute__((optimize("no-lifetime-dse"))) AllocateFrame(nsQueryFrame::FrameIID aID, size_t aSize) {
void* result = mFrameArena.AllocateByFrameID(aID, aSize);
RecordAlloc(result);
return result;

View file

@ -1,3 +1,3 @@
SHA512 (cbindgen-vendor.tar.xz) = 4127d3060577284eea29d697ccc2394742674f6094b7f497a95a0c3b8aa9e0494b720de8858ad31d4a6b0cd1b9586454f3c52c8088163c2709883d882e0136db
SHA512 (thunderbird-147.0.source.tar.xz) = d04a135f23572123d5cca41c2611704aa06cb81e0226c89c267dc527f59fb0d9d5d8b8a49cd126626c2fd934624c9d2420ae71dd10a912b3011f3342fbaf7511
SHA512 (thunderbird-langpacks-147.0-20260114.tar.xz) = e97f2894c0bbea00c35e5d8f0046d1d7112efb17d3af5d8a6f964c54352f9f6edbcbd4d41cc2595cb63e1116ae78680c9d42e65dc0eb0ff17e4a9d4ad97ec7ab
SHA512 (cbindgen-vendor.tar.xz) = 161811f4adfc74e5d92871c78139704d32e1e1ad6b615c85353de300d9647a68f1ca8b1c953f7cc5539d861e9e8d8e42892cae757a3eafea78804e19bc323c16
SHA512 (thunderbird-115.16.1.source.tar.xz) = 4705c088bdca46c4fa15a3d3f80783eab6181be3cd7abb8c990909043b340e33e090056ec95c3fc80d04fb315047c3e235a604a06c844b606eb7152b561494c7
SHA512 (thunderbird-langpacks-115.16.1-20241030.tar.xz) = 23b2674e19b299596fd17cbc4a38dc694fc516f36a49c45653ff0fff234b2602bac244080a6c20d3a2fc4222248dc33abaa73a52e8835af0cccd84ff61b3e533

30
thunderbird.desktop Normal file
View file

@ -0,0 +1,30 @@
[Desktop Entry]
Version=1.0
Name=Thunderbird
GenericName=Email
Comment=Send and Receive Email
Exec=thunderbird %u
TryExec=thunderbird
Icon=thunderbird
Terminal=false
Type=Application
MimeType=message/rfc822;x-scheme-handler/mailto;
StartupNotify=true
Categories=Network;Email;
Name[cs]=Poštovní klient Thunderbird
Name[ca]=Client de correu Thunderbird
Name[fi]=Thunderbird-sähköposti
Name[fr]=Messagerie Thunderbird
Name[pl]=Klient poczty Thunderbird
Name[pt_BR]=Cliente de E-mail Thunderbird
Name[sv]=E-postklienten Thunderbird
Comment[ca]=Llegiu i escriviu correu
Comment[cs]=Čtení a psaní pošty
Comment[de]=Emails lesen und verfassen
Comment[fi]=Lue ja kirjoita sähköposteja
Comment[fr]=Lire et écrire des courriels
Comment[it]=Leggere e scrivere email
Comment[ja]=
Comment[pl]=Czytanie i wysyłanie e-maili
Comment[pt_BR]=Ler e escrever suas mensagens
Comment[sv]=Läs och skriv e-post

View file

@ -59,9 +59,6 @@ export GNOME_DISABLE_CRASH_DIALOG
##
export G_SLICE=always-malloc
# Flatpak specific environment variables
%FLATPAK_ENV_VARS%
##
## Allow downgrade because during distro upgrade the build time can be
## older in newer version than the previous one.

View file

@ -1,15 +1,3 @@
# ppc64le started to fail permanently, apparently OOM,
# first f42 https://koji.fedoraproject.org/koji/taskinfo?taskID=124917502
# then f40 https://koji.fedoraproject.org/koji/taskinfo?taskID=125295645
# then also f41 https://koji.fedoraproject.org/koji/taskinfo?taskID=125632253
# Excluded due to https://bugzilla.mozilla.org/show_bug.cgi?id=1792159
# https://bugzilla.redhat.com/show_bug.cgi?id=2129720
ExcludeArch: i686
%ifarch ppc64le
%global rustflags_debuginfo 1
%endif
%if 0%{?fedora} > 35 || 0%{?rhel} > 9
%global dictionarydir hunspell
%else
@ -25,12 +13,16 @@ ExcludeArch: armv7hl
# Build as a debug package?
%define debug_build 0
# Hardened build?
%define hardened_build 1
%define system_ffi 1
%define build_langpacks 1
%bcond_with toolchain_clang
%global use_bundled_cbindgen 1
%global disable_elfhack 1
%if %{?system_nss}
%global nspr_version 4.26.0
@ -44,6 +36,11 @@ ExcludeArch: armv7hl
%define libnotify_version 0.4
%define _default_patch_fuzz 2
# There are still build problems on s390x, see
# https://koji.fedoraproject.org/koji/taskinfo?taskID=55048351
# https://bugzilla.redhat.com/show_bug.cgi?id=1897522
ExcludeArch: s390x
# libvpx is too new for Firefox 65
%define system_jpeg 1
@ -66,7 +63,6 @@ ExcludeArch: armv7hl
%define mozappdir %{_libdir}/thunderbird
%define official_branding 1
#define pre_version
%define enable_mozilla_crashreporter 0
@ -89,15 +85,19 @@ ExcludeArch: armv7hl
%global __provides_exclude_from ^%{mozappdir}
%global __requires_exclude ^(%%(find %{buildroot}%{mozappdir} -name '*.so' | xargs -n1 basename | sort -u | paste -s -d '|' -))
# From 115.16 on they renamed directory and archive names to 115.16.0esr and so on.
# But not for 115.16.1 ... sigh..
#%%global version_extension esr
Summary: Mozilla Thunderbird mail/newsgroup client
Name: thunderbird
Version: 147.0
Version: 115.16.1
Release: 1%{?dist}
URL: http://www.mozilla.org/projects/thunderbird/
License: MPL-2.0 OR GPL-2.0-or-later OR LGPL-2.0-or-later
Source0: https://archive.mozilla.org/pub/thunderbird/releases/%{version}%{?pre_version}/source/thunderbird-%{version}%{?pre_version}.source.tar.xz
Source0: https://archive.mozilla.org/pub/thunderbird/releases/%{version}%{?version_extension}%{?pre_version}/source/thunderbird-%{version}%{?version_extension}%{?pre_version}.source.tar.xz
%if %{build_langpacks}
Source1: thunderbird-langpacks-%{version}%{?pre_version}-20260114.tar.xz
Source1: thunderbird-langpacks-%{version}%{?version_extension}-20241030.tar.xz
%endif
Source3: get-calendar-langpacks.sh
Source4: cbindgen-vendor.tar.xz
@ -105,54 +105,39 @@ Source4: cbindgen-vendor.tar.xz
Source10: thunderbird-mozconfig
Source11: thunderbird-mozconfig-branded
Source12: thunderbird-redhat-default-prefs.js
Source20: thunderbird.desktop
Source21: thunderbird.sh.in
Source25: thunderbird-symbolic.svg
Source28: thunderbird-wayland.sh.in
Source29: thunderbird-wayland.desktop
Source32: node-stdout-nonblocking-wrapper
Source33: net.thunderbird.Thunderbird.desktop
Source34: net.thunderbird.Thunderbird.appdata.xml
Source33: org.mozilla.thunderbird.desktop
# Build patches
Patch9: mozilla-build-arm.patch
#Patch226: rhbz-1354671.patch
Patch415: Bug-1238661---fix-mozillaSignalTrampoline-to-work-.patch
#Patch416: firefox-SIOCGSTAMP.patch
Patch418: mozilla-1512162.patch
#Patch419: bindgen-d0dfc52706f23db9dc9d74642eeebd89d73cb8d0.patch
Patch103: rhbz-1219542-s390-build.patch
# gcc 12 build fix patches
Patch422: 0001-GLIBCXX-fix-for-GCC-12.patch
Patch425: build-disable-elfhack.patch
# Build patches
Patch32: build-rust-ppc64le.patch
Patch35: build-ppc-jit.patch
Patch36: build-botan-target.patch
Patch37: build-c11-threads-avail.patch
# Fixing missing cacheFlush when JS_CODEGEN_NONE is used (s390x)
Patch40: build-aarch64-skia.patch
Patch44: build-arm-libopus.patch
Patch53: firefox-gcc-build.patch
Patch71: 0001-GLIBCXX-fix-for-GCC-12.patch
Patch78: firefox-i686-build.patch
Patch79: firefox-gcc-13-build.patch
# PROTOBUF_MUSTTAIL return ... error: cannot tail-call: target is not able to optimize the call into a sibling call
Patch82: build-s390x-protobuf-musttail.patch
# Build failure on rawhide of wrongly defined SYS_SECCOMP
Patch83: build-seccomp.patch
Patch84: build-minimal-lexical.patch
Patch85: build-libcubeb.patch
Patch86: build-missing-gitmodules.patch
# PPC fix
Patch304: mozilla-1245783.patch
# Fedora specific patches
# Upstream patches
Patch402: mozilla-526293.patch
Patch406: mozilla-1170092.patch
# https://bugzilla.mozilla.org/show_bug.cgi?id=1998188
# this is the Firefox patch, manually rediffed against 146.0.1
# https://bugzilla.mozilla.org/show_bug.cgi?id=2008377
# fix crash on aarch64
# Bundled expat backported patches
Patch501: expat-CVE-2022-25235.patch
Patch502: expat-CVE-2022-25236.patch
Patch503: expat-CVE-2022-25315.patch
# Tentative patch for RUSTFLAGS parsing issue,
# borrowed from firefox commit 24c9accce19c5cae9394430b24eaf938a9c17882:
@ -177,7 +162,6 @@ BuildRequires: nss-devel >= %{nss_version}
Requires: nspr >= %{nspr_build_version}
Requires: nss >= %{nss_build_version}
%endif
BuildRequires: libappstream-glib
BuildRequires: libnotify-devel >= %{libnotify_version}
BuildRequires: libpng-devel
BuildRequires: libjpeg-devel
@ -193,9 +177,16 @@ BuildRequires: libXt-devel
BuildRequires: libXrender-devel
BuildRequires: hunspell-devel
BuildRequires: llvm
BuildRequires: llvm-devel
%if 0%{?fedora} >= 40 || 0%{?rhel} >= 10
BuildRequires: clang17
BuildRequires: clang17-libs
BuildRequires: llvm17-devel
%global llvm_suffix -17
%else
BuildRequires: clang
BuildRequires: clang-libs
BuildRequires: llvm-devel
%endif
%if "%toolchain" == "clang"
BuildRequires: lld
%endif
@ -212,6 +203,7 @@ BuildRequires: pulseaudio-libs-devel
BuildRequires: libicu-devel
BuildRequires: perl-interpreter
Requires: mozilla-filesystem
BuildRequires: yasm
BuildRequires: dbus-glib-devel
Obsoletes: thunderbird-lightning
Provides: thunderbird-lightning
@ -299,38 +291,38 @@ debug %{name}, you want to install %{name}-debuginfo instead.
%setup -q
# Build patches
%patch -P 9 -p2 -b .arm
%ifarch s390
%patch -P 103 -p1 -b .rhbz-1219542-s390-build
%endif
%patch -P 304 -p1 -b .1245783
#ARM run-time patch
%ifarch aarch64
#%patch -P 226 -p1 -b .1354671
%endif
#FIXME %%patch -P 416 -p1 -b .SIOCGSTAMP
%patch -P36 -p1 -b .build-botan
%if 0%{?fedora} > 43
%patch -P37 -p1 -b .build-c11-threads-avail
%ifarch %{arm}
%patch -P 415 -p1 -b .mozilla-1238661
%endif
#FIXME %patch -P 416 -p1 -b .SIOCGSTAMP
%patch -P 418 -p1 -b .mozbz-1512162
%if 0%{?disable_elfhack}
%patch -P 425 -p1 -b .build-disable-elfhack
%endif
# most likely fixed
#%%patch -P 419 -p1 -b .bindgen
#%patch -P 419 -p1 -b .bindgen
%patch -P 402 -p1 -b .526293
%patch -P 406 -p1 -b .1170092-etc-conf
%patch -P 422 -p1 -b .0001-GLIBCXX-fix-for-GCC-12
#patch -P40 -p1 -b .aarch64-skia
%patch -P44 -p1 -b .build-arm-libopus
#patch -P53 -p1 -b .firefox-gcc-build
%patch -P71 -p1 -b .0001-GLIBCXX-fix-for-GCC-12
%patch -P78 -p1 -b .firefox-i686
%patch -P79 -p1 -b .firefox-gcc-13-build
%patch -P82 -p1 -b .build-s390x-protobuf-musttail
%patch -P83 -p1 -b .build-seccomp
%patch -P84 -p1 -b .minimal-lexical
%patch -P85 -p1 -b .libcubeb
%patch -P86 -p1 -b .missing-gitmodules
%patch -P 501 -p1 -b .expat-CVE-2022-25235
%patch -P 502 -p1 -b .expat-CVE-2022-25236
%patch -P 503 -p1 -b .expat-CVE-2022-25315
#patch -P 1200 -p1 -b .rustflags-commasplit
%patch -P 1200 -p1 -b .rustflags-commasplit
%if %{official_branding}
# Required by Mozilla Corporation
@ -384,7 +376,6 @@ echo "ac_add_options --enable-system-ffi" >> .mozconfig
%endif
%ifarch aarch64
echo "ac_add_options --disable-elf-hack" >> .mozconfig
echo "ac_add_options --disable-jit" >> .mozconfig
%endif
@ -422,18 +413,16 @@ echo "ac_add_options --disable-crashreporter" >> .mozconfig
# Same as https://bugzilla.redhat.com/show_bug.cgi?id=2239046 for Firefox:
# Clang 17 upstream's detection fails, tell it where to look.
echo "ac_add_options --with-clang-path=`which clang%{?llvm_suffix}`" >> .mozconfig
echo "ac_add_options --with-libclang-path=`llvm-config%{?llvm_suffix} --libdir`" >> .mozconfig
echo 'export NODEJS="%{nodewrapperdir}/node-stdout-nonblocking-wrapper"' >> .mozconfig
%if 0%{?fedora} >= %{only_wayland}
echo 'export MOZ_APP_REMOTINGNAME=net.thunderbird.Thunderbird' >> .mozconfig
echo 'export MOZ_APP_REMOTINGNAME=org.mozilla.thunderbird' >> .mozconfig
%else
echo 'export MOZ_APP_REMOTINGNAME=thunderbird' >> .mozconfig
%endif
# https://bugzilla.redhat.com/show_bug.cgi?id=2239046
# with clang 17 upstream's detection fails, so let's just tell it
# where to look
echo "ac_add_options --with-libclang-path=`llvm-config --libdir`" >> .mozconfig
# Remove executable bit to make brp-mangle-shebangs happy.
find third_party -type f -iname "*.rs"|xargs chmod a-x
@ -463,6 +452,17 @@ env CARGO_HOME=.cargo cargo install cbindgen
export PATH=`pwd`/.cargo/bin:$PATH
%endif
%if 0%{?big_endian}
echo "Generate big endian version of config/external/icu/data/icud58l.dat"
icupkg -tb config/external/icu/data/icudt67l.dat config/external/icu/data/icudt67b.dat
ls -l config/external/icu/data
rm -f config/external/icu/data/icudt*l.dat
# ./mach python intl/icu_sources_data.py .
# ls -l config/external/icu/data
# rm -f config/external/icu/data/icudt*l.dat
# cat /tmp/icu*
%endif
mkdir -p %{nodewrapperdir} || :
cp %{SOURCE32} %{nodewrapperdir} || :
@ -478,15 +478,16 @@ find ./ -name config.guess -exec cp /usr/lib/rpm/config.guess {} ';'
#
MOZ_OPT_FLAGS=$(echo "$RPM_OPT_FLAGS -fpermissive" | \
%{__sed} -e 's/-Wall//')
# Thunderbird is not supposed to build with exceptions globally enabled
MOZ_OPT_FLAGS=$(echo "$MOZ_OPT_FLAGS" | sed -e 's/-fexceptions//')
#rhbz#1037063
# -Werror=format-security causes build failures when -Wno-format is explicitly given
# for some sources
# Explicitly force the hardening flags for Firefox so it passes the checksec test;
# See also https://fedoraproject.org/wiki/Changes/Harden_All_Packages
%if 0%{?fedora} < 30
MOZ_OPT_FLAGS="$MOZ_OPT_FLAGS -Wformat-security -Wformat -Werror=format-security"
%else
# Workaround for mozbz#1531309
MOZ_OPT_FLAGS=$(echo "$MOZ_OPT_FLAGS" | %{__sed} -e 's/-Werror=format-security//')
%endif
# Use hardened build?
%if %{?hardened_build}
MOZ_OPT_FLAGS="$MOZ_OPT_FLAGS -fPIC -Wl,-z,relro -Wl,-z,now"
%endif
%if %{?debug_build}
MOZ_OPT_FLAGS=$(echo "$MOZ_OPT_FLAGS" | %{__sed} -e 's/-O2//')
%endif
@ -517,10 +518,8 @@ echo "ac_add_options --enable-linker=gold" >> .mozconfig
# __global_ldflags that normally sets this.
MOZ_LINK_FLAGS="$MOZ_LINK_FLAGS -L%{_libdir}"
%endif
%ifarch %{arm} %{ix86} s390x
RUSTFLAGS=`echo $RUSTFLAGS | sed -e 's/opt-level=3/opt-level=2/g' -e 's/debuginfo=2/debuginfo=0/g'`
export RUSTFLAGS=$RUSTFLAGS
%ifarch %{arm} %{ix86} %{s390x}
export RUSTFLAGS="-Cdebuginfo=0"
%endif
# We don't want thunderbird to use CK_GCM_PARAMS_V3 in nss
MOZ_OPT_FLAGS="$MOZ_OPT_FLAGS -DNSS_PKCS11_3_0_STRICT"
@ -528,7 +527,6 @@ MOZ_OPT_FLAGS="$MOZ_OPT_FLAGS -DNSS_PKCS11_3_0_STRICT"
echo "export CFLAGS=\"$MOZ_OPT_FLAGS\"" >> .mozconfig
echo "export CXXFLAGS=\"$MOZ_OPT_FLAGS\"" >> .mozconfig
echo "export LDFLAGS=\"$MOZ_LINK_FLAGS\"" >> .mozconfig
echo "export RUSTFLAGS=\"$RUSTFLAGS\"" >> .mozconfig
%if "%toolchain" == "clang"
echo "export LLVM_PROFDATA=\"llvm-profdata\"" >> .mozconfig
@ -549,11 +547,19 @@ 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
echo "mk_add_options MOZ_MAKE_FLAGS=\"-j%{_smp_build_ncpus}\"" >> .mozconfig
MOZ_SMP_FLAGS=-j1
# On x86 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} x86_64 ppc %{power64} aarch64
[ -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
%endif
export MOZ_MAKE_FLAGS="$MOZ_SMP_FLAGS"
export STRIP=/bin/true
export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE=system
#Use python 3.11 for mach
@ -596,7 +602,7 @@ desktop-file-install --vendor mozilla \
--dir $RPM_BUILD_ROOT%{_datadir}/applications \
%{SOURCE29}
%else
#net.thunderbird.Thunderbird for F40+
#org.mozilla.thunderbird for F40+
desktop-file-install \
--dir $RPM_BUILD_ROOT%{_datadir}/applications \
%{SOURCE33}
@ -608,13 +614,6 @@ rm -f $RPM_BUILD_ROOT/%{_bindir}/thunderbird
%{__cat} %{SOURCE21} | %{__sed} -e 's,__PREFIX__,%{_prefix},g' > \
$RPM_BUILD_ROOT/%{_bindir}/thunderbird
%{__chmod} 755 $RPM_BUILD_ROOT/%{_bindir}/thunderbird
%if 0%{?flatpak}
sed -i -e 's|%FLATPAK_ENV_VARS%|export TMPDIR="$XDG_CACHE_HOME/tmp"|' %{buildroot}%{_bindir}/thunderbird
%else
sed -i -e 's|%FLATPAK_ENV_VARS%||' %{buildroot}%{_bindir}/thunderbird
%endif
# Enable wayland by default on f40+
# Overridable for rhbz#2283993 https://bugzilla.mozilla.org/show_bug.cgi?id=1898476
%if 0%{?fedora} >= %{only_wayland}
@ -695,13 +694,8 @@ touch $RPM_BUILD_ROOT%{mozappdir}/components/xpti.dat
# Register as an application to be visible in the software center
mkdir -p $RPM_BUILD_ROOT%{_datadir}/metainfo
%{__sed} -e "s/__VERSION__/%{version}/" \
-e "s/__DATE__/$(date '+%Y-%m-%d')/" \
%{SOURCE34} > %{buildroot}%{_datadir}/metainfo/net.thunderbird.Thunderbird.appdata.xml
#===============================================================================
%check
appstream-util validate-relax --nonet %{buildroot}%{_datadir}/metainfo/*.appdata.xml
%{__cp} -p comm/mail/branding/%{name}/net.thunderbird.Thunderbird.appdata.xml $RPM_BUILD_ROOT%{_datadir}/metainfo/thunderbird.appdata.xml
sed -i -e 's|<icon .*|<icon type="stock">thunderbird</icon>|' "$RPM_BUILD_ROOT%{_datadir}/metainfo/thunderbird.appdata.xml"
#===============================================================================
@ -724,7 +718,11 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
%defattr(-,root,root,-)
%attr(755,root,root) %{_bindir}/thunderbird
%{_datadir}/metainfo/*.appdata.xml
%attr(644,root,root) %{_datadir}/applications/net.thunderbird.Thunderbird.desktop
%if 0%{?fedora} < %{only_wayland}
%attr(644,root,root) %{_datadir}/applications/mozilla-thunderbird.desktop
%else
%attr(644,root,root) %{_datadir}/applications/org.mozilla.thunderbird.desktop
%endif
%dir %{_sysconfdir}/%{name}
%dir %{_sysconfdir}/%{name}/*
%dir %{_datadir}/mozilla/extensions/%{thunderbird_app_id}
@ -736,6 +734,7 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
%ghost %{mozappdir}/components/compreg.dat
%ghost %{mozappdir}/components/xpti.dat
%{mozappdir}/omni.ja
%{mozappdir}/plugin-container
%{mozappdir}/defaults
%{mozappdir}/dictionaries
%if %{build_langpacks}
@ -772,133 +771,21 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
%{mozappdir}/pingsender
%{mozappdir}/glxtest
%{mozappdir}/vaapitest
%{mozappdir}/interesting_serverknobs.json
#===============================================================================
%changelog
* Wed Jan 14 2026 Jan Horak <jhorak@redhat.com> - 147.0-1
- Update to 147.0
* Wed Oct 30 2024 Eike Rathke <erack@redhat.com> - 115.16.1-1
- Update to 115.16.1
* Fri Jan 02 2026 Adam Williamson <awilliam@redhat.com> - 146.0.1-3
- Port aarch64 crash fix from Firefox (upstream #2005469 / #2008377)
* Thu Oct 10 2024 Eike Rathke <erack@redhat.com> - 115.16.0-1
- Update to 115.16.0
* Mon Dec 22 2025 Adam Williamson <awilliam@redhat.com> - 146.0.1-2
- Backport fix for resize crash bug (RHBZ #2423824 upstream #1998188)
* Thu Sep 05 2024 Eike Rathke <erack@redhat.com> - 115.15.0-1
- Update to 115.15.0
* Thu Dec 18 2025 Jan Horak <jhorak@redhat.com> - 146.0.1-1
- Update to 146.0.1
* Mon Dec 15 2025 Jan Horak <jhorak@redhat.com> - 146.0-1
- Update to 146.0
* Wed Nov 19 2025 Jan Horak <jhorak@redhat.com> - 145.0-1
- Update to 145.0
* Thu Nov 06 2025 Jan Horak <jhorak@redhat.com> - 144.0.1-2
- Fixing sigsegv on rawhide
* Tue Oct 21 2025 Jan Horak <jhorak@redhat.com> - 144.0.1-1
- Update to 144.0.1
* Thu Oct 16 2025 Jan Horak <jhorak@redhat.com> - 144.0-1
- Update to 144.0
* Thu Oct 2 2025 Jan Horak <jhorak@redhat.com> - 143.0.1-1
- Update to 143.0.1
* Thu Sep 25 2025 Dominik Mierzejewski <dominik@greysector.net> - 140.3.0-2
- Drop unused yasm from build dependencies
See: https://fedoraproject.org/wiki/Changes/DeprecateYASM
Resolves: rhbz#2390538
* Wed Sep 24 2025 Jan Horak <jhorak@redhat.com> - 140.3.0-1
- Update to 140.3.0 ESR
* Thu Sep 4 2025 Jan Horak <jhorak@redhat.com> - 140.2.1-1
- Update to 140.2.1 ESR
* Wed Jul 23 2025 Eike Rathke <erack@redhat.com> - 128.13.0-1
- Update to 128.13.0
* Mon Jul 07 2025 Eike Rathke <erack@redhat.com> - 128.12.0-1
- Update to 128.12.0
* Wed Jun 11 2025 Eike Rathke <erack@redhat.com> - 128.11.1-1
- Update to 128.11.1
* Mon May 26 2025 Eike Rathke <erack@redhat.com> - 128.11.0-1
- Update to 128.11.0
* Wed May 21 2025 Eike Rathke <erack@redhat.com> - 128.10.2-1
- Update to 128.10.2
* Mon May 19 2025 Eike Rathke <erack@redhat.com> - 128.10.1-1
- Update to 128.10.1
* Tue Apr 29 2025 Eike Rathke <erack@redhat.com> - 128.10.0-1
- Update to 128.10.0
* Thu Apr 17 2025 Eike Rathke <erack@redhat.com> - 128.9.2-1
- Update to 128.9.2
* Wed Apr 02 2025 Eike Rathke <erack@redhat.com> - 128.9.0-1
- Update to 128.9.0
* Thu Mar 06 2025 Eike Rathke <erack@redhat.com> - 128.8.0-1
- Update to 128.8.0
* Wed Feb 19 2025 Jan Horak <jhorak@redhat.com> - 128.7.1-1
- Update to 128.7.1 build1
* Tue Jan 28 2025 Eike Rathke <erack@redhat.com> - 128.6.1-1
- Update to 128.6.1
* Sun Jan 19 2025 Fedora Release Engineering <releng@fedoraproject.org> - 128.6.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Wed Jan 08 2025 Eike Rathke <erack@redhat.com> - 128.6.0-1
- Update to 128.6.0
* Thu Dec 19 2024 Daniel Rusek <mail@asciiwolf.com> - 128.5.2-2
- Use upstream rDNS naming scheme for desktop and appdata files
Resolves: rhbz#2210038
* Wed Dec 11 2024 Eike Rathke <erack@redhat.com> - 128.5.2-1
- Update to 128.5.2
* Wed Nov 27 2024 Eike Rathke <erack@redhat.com> - 128.5.0-1
- Update to 128.5.0
* Wed Nov 13 2024 Eike Rathke <erack@redhat.com> - 128.4.3-1
- Update to 128.4.3
* Thu Nov 07 2024 Eike Rathke <erack@redhat.com> - 128.4.2-1
- Update to 128.4.2
* Mon Oct 28 2024 Eike Rathke <erack@redhat.com> - 128.4.0-1
- Update to 128.4.0 build1
* Tue Oct 22 2024 Eike Rathke <erack@redhat.com> - 128.3.3-1
- Update to 128.3.3
* Thu Oct 17 2024 Eike Rathke <erack@redhat.com> - 128.3.2-1
- Update to 128.3.2
* Thu Oct 10 2024 Eike Rathke <erack@redhat.com> - 128.3.1-1
- Update to 128.3.1
* Tue Oct 08 2024 Eike Rathke <erack@redhat.com> - 128.3.0-1
- Update to 128.3.0
* Thu Sep 05 2024 Eike Rathke <erack@redhat.com> - 128.2.0-1
- Update to 128.2.0
* Tue Aug 06 2024 Eike Rathke <erack@redhat.com> - 128.1.0-1
- Update to 128.1.0
* Wed Jul 17 2024 Jan Horak <jhorak@redhat.com> - 128.0-1
- Update to 128.0 ESR
* Tue Aug 06 2024 Eike Rathke <erack@redhat.com> - 115.14.0-1
- Update to 115.14.0
* Tue Jul 16 2024 Eike Rathke <erack@redhat.com> - 115.13.0-1
- Update to 115.13.0