Compare commits

..

No commits in common. "rawhide" and "f29" have entirely different histories.

39 changed files with 499 additions and 1683 deletions

252
.gitignore vendored
View file

@ -276,255 +276,3 @@ thunderbird-langpacks-3.1.2-20100803.tar.bz2
/thunderbird-68.3.0.source.tar.xz
/thunderbird-langpacks-68.3.0-20191203.tar.xz
/lightning-langpacks-68.3.0.tar.xz
/thunderbird-68.3.1.source.tar.xz
/thunderbird-langpacks-68.3.1-20191217.tar.xz
/lightning-langpacks-68.3.1.tar.xz
/thunderbird-68.4.1.source.tar.xz
/thunderbird-langpacks-68.4.1-20200113.tar.xz
/lightning-langpacks-68.4.1.tar.xz
/thunderbird-68.5.0.source.tar.xz
/thunderbird-langpacks-68.5.0-20200213.tar.xz
/lightning-langpacks-68.5.0.tar.xz
/thunderbird-68.6.0.source.tar.xz
/thunderbird-langpacks-68.6.0-20200313.tar.xz
/lightning-langpacks-68.6.0.tar.xz
/thunderbird-68.7.0.source.tar.xz
/thunderbird-langpacks-68.7.0-20200409.tar.xz
/lightning-langpacks-68.7.0.tar.xz
/thunderbird-68.8.0.source.tar.xz
/thunderbird-langpacks-68.8.0-20200514.tar.xz
/lightning-langpacks-68.8.0.tar.xz
/thunderbird-68.9.0.source.tar.xz
/thunderbird-langpacks-68.9.0-20200608.tar.xz
/lightning-langpacks-68.9.0.tar.xz
/thunderbird-68.10.0.source.tar.xz
/thunderbird-langpacks-68.10.0-20200709.tar.xz
/lightning-langpacks-68.10.0.tar.xz
/thunderbird-68.11.0.source.tar.xz
/thunderbird-langpacks-68.11.0-20200806.tar.xz
/lightning-langpacks-68.11.0.tar.xz
/thunderbird-68.12.0.source.tar.xz
/thunderbird-langpacks-68.12.0-20200908.tar.xz
/lightning-langpacks-68.12.0.tar.xz
/thunderbird-78.3.1.source.tar.xz
/thunderbird-langpacks-78.3.1-20200930.tar.xz
/cbindgen-vendor-0.14.3.tar.xz
/thunderbird-78.4.0.source.tar.xz
/thunderbird-langpacks-78.4.0-20201022.tar.xz
/thunderbird-78.4.3.source.tar.xz
/thunderbird-langpacks-78.4.3-20201112.tar.xz
/thunderbird-78.5.0.source.tar.xz
/thunderbird-langpacks-78.5.0-20201125.tar.xz
/thunderbird-78.6.0.source.tar.xz
/thunderbird-langpacks-78.6.0-20201215.tar.xz
/thunderbird-78.6.1.source.tar.xz
/thunderbird-langpacks-78.6.1-20210114.tar.xz
/thunderbird-78.7.0.source.tar.xz
/thunderbird-langpacks-78.7.0-20210127.tar.xz
/thunderbird-78.8.0.source.tar.xz
/thunderbird-langpacks-78.8.0-20210218.tar.xz
/thunderbird-78.8.1.source.tar.xz
/thunderbird-langpacks-78.8.1-20210315.tar.xz
/thunderbird-78.10.1.source.tar.xz
/thunderbird-langpacks-78.10.1-20210504.tar.xz
/thunderbird-78.11.0.source.tar.xz
/thunderbird-langpacks-78.11.0-20210602.tar.xz
/thunderbird-78.12.0.source.tar.xz
/thunderbird-langpacks-78.12.0-20210721.tar.xz
/thunderbird-91.0.2.source.tar.xz
/thunderbird-langpacks-91.0.2-20210823.tar.xz
/thunderbird-91.0.3.source.tar.xz
/thunderbird-langpacks-91.0.3-20210826.tar.xz
/thunderbird-91.1.0.source.tar.xz
/thunderbird-langpacks-91.1.0-20210907.tar.xz
/thunderbird-91.2.0.source.tar.xz
/thunderbird-langpacks-91.2.0-20211015.tar.xz
/thunderbird-91.3.0.source.tar.xz
/thunderbird-langpacks-91.3.0-20211109.tar.xz
/thunderbird-91.4.0.source.tar.xz
/thunderbird-langpacks-91.4.0-20211215.tar.xz
/thunderbird-91.5.0.source.tar.xz
/thunderbird-langpacks-91.5.0-20220118.tar.xz
/thunderbird-91.6.0.source.tar.xz
/thunderbird-langpacks-91.6.0-20220209.tar.xz
/thunderbird-91.6.1.source.tar.xz
/thunderbird-langpacks-91.6.1-20220228.tar.xz
/thunderbird-langpacks-91.6.2-20220307.tar.xz
/thunderbird-91.6.2.source.tar.xz
/thunderbird-langpacks-91.7.0-20220308.tar.xz
/thunderbird-91.7.0.source.tar.xz
/thunderbird-91.8.0.source.tar.xz
/thunderbird-langpacks-91.8.0-20220405.tar.xz
/thunderbird-91.9.0.source.tar.xz
/thunderbird-langpacks-91.9.0-20220503.tar.xz
/thunderbird-91.9.1.source.tar.xz
/thunderbird-langpacks-91.9.1-20220523.tar.xz
/thunderbird-91.10.0.source.tar.xz
/thunderbird-langpacks-91.10.0-20220530.tar.xz
/thunderbird-91.11.0.source.tar.xz
/thunderbird-langpacks-91.11.0-20220628.tar.xz
/thunderbird-91.12.0.source.tar.xz
/thunderbird-langpacks-91.12.0-20220725.tar.xz
/thunderbird-102.1.0.source.tar.xz
/thunderbird-langpacks-102.1.0-20220803.tar.xz
/thunderbird-102.2.0.source.tar.xz
/thunderbird-langpacks-102.2.0-20220823.tar.xz
/thunderbird-102.2.1.source.tar.xz
/thunderbird-langpacks-102.2.1-20220901.tar.xz
/thunderbird-102.3.0.source.tar.xz
/thunderbird-langpacks-102.3.0-20220916.tar.xz
/thunderbird-102.3.1.source.tar.xz
/thunderbird-langpacks-102.3.1-20220929.tar.xz
/thunderbird-102.4.0.source.tar.xz
/thunderbird-langpacks-102.4.0-20221017.tar.xz
/thunderbird-102.4.1.source.tar.xz
/thunderbird-langpacks-102.4.1-20221102.tar.xz
/thunderbird-102.5.0.source.tar.xz
/thunderbird-langpacks-102.5.0-20221115.tar.xz
/thunderbird-102.5.1.source.tar.xz
/thunderbird-langpacks-102.5.1-20221201.tar.xz
/thunderbird-102.6.0.source.tar.xz
/thunderbird-langpacks-102.6.0-20221213.tar.xz
/thunderbird-102.7.1.source.tar.xz
/thunderbird-langpacks-102.7.1-20230124.tar.xz
/thunderbird-langpacks-102.7.1-20230131.tar.xz
/thunderbird-102.7.2.source.tar.xz
/thunderbird-langpacks-102.7.2-20230208.tar.xz
/thunderbird-102.8.0.source.tar.xz
/thunderbird-langpacks-102.8.0-20230215.tar.xz
/thunderbird-102.9.0.source.tar.xz
/thunderbird-langpacks-102.9.0-20230313.tar.xz
/thunderbird-102.9.1.source.tar.xz
/thunderbird-langpacks-102.9.1-20230329.tar.xz
/thunderbird-102.10.0.source.tar.xz
/thunderbird-langpacks-102.10.0-20230411.tar.xz
/thunderbird-102.11.0.source.tar.xz
/thunderbird-langpacks-102.11.0-20230504.tar.xz
/thunderbird-102.11.1.source.tar.xz
/thunderbird-langpacks-102.11.1-20230525.tar.xz
/thunderbird-102.12.0.source.tar.xz
/thunderbird-langpacks-102.12.0-20230605.tar.xz
/thunderbird-102.13.0.source.tar.xz
/thunderbird-langpacks-102.13.0-20230707.tar.xz
/thunderbird-langpacks-115.0.1-20230720.tar.xz
/thunderbird-115.0.1.source.tar.xz
/thunderbird-langpacks-115.1.1-20230815.tar.xz
/thunderbird-115.1.1.source.tar.xz
/thunderbird-115.2.2.source.tar.xz
/thunderbird-langpacks-115.2.2-20230920.tar.xz
/thunderbird-115.3.0.source.tar.xz
/thunderbird-langpacks-115.3.0-20230926.tar.xz
/thunderbird-langpacks-115.3.1-20230929.tar.xz
/thunderbird-115.3.1.source.tar.xz
/thunderbird-115.3.2.source.tar.xz
/thunderbird-langpacks-115.3.2-20231011.tar.xz
/thunderbird-115.4.0.source.tar.xz
/thunderbird-langpacks-115.4.0-20231024.tar.xz
/thunderbird-115.4.1.source.tar.xz
/thunderbird-langpacks-115.4.1-20231025.tar.xz
/thunderbird-115.4.2.source.tar.xz
/thunderbird-langpacks-115.4.2-20231108.tar.xz
/thunderbird-115.4.3.source.tar.xz
/thunderbird-langpacks-115.4.3-20231115.tar.xz
/thunderbird-115.5.0.source.tar.xz
/thunderbird-langpacks-115.5.0-20231121.tar.xz
/thunderbird-115.5.1.source.tar.xz
/thunderbird-langpacks-115.5.1-20231128.tar.xz
/thunderbird-115.5.2.source.tar.xz
/thunderbird-langpacks-115.5.2-20231212.tar.xz
/thunderbird-115.6.0.source.tar.xz
/thunderbird-langpacks-115.6.0-20231218.tar.xz
/thunderbird-115.6.1.source.tar.xz
/thunderbird-langpacks-115.6.1-20240110.tar.xz
/thunderbird-115.7.0.source.tar.xz
/thunderbird-langpacks-115.7.0-20240122.tar.xz
/thunderbird-115.8.0.source.tar.xz
/thunderbird-langpacks-115.8.0-20240219.tar.xz
/thunderbird-115.8.1.source.tar.xz
/thunderbird-langpacks-115.8.1-20240305.tar.xz
/thunderbird-115.10.0.source.tar.xz
/thunderbird-langpacks-115.10.0-20240415.tar.xz
/thunderbird-115.10.1.source.tar.xz
/thunderbird-langpacks-115.10.1-20240422.tar.xz
/thunderbird-115.11.0.source.tar.xz
/thunderbird-langpacks-115.11.0-20240513.tar.xz
/thunderbird-115.11.1.source.tar.xz
/thunderbird-langpacks-115.11.1-20240529.tar.xz
/thunderbird-115.11.2.source.tar.xz
/thunderbird-langpacks-115.11.2-20240603.tar.xz
/thunderbird-115.12.0.source.tar.xz
/thunderbird-langpacks-115.12.0-20240611.tar.xz
/thunderbird-115.12.1.source.tar.xz
/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

View file

@ -1,23 +0,0 @@
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
} // namespace std
#endif
+#if _GLIBCXX_RELEASE >= 12
+namespace std {
+
+/* This avoids the GLIBCXX_3.4.30 symbol version. */
+void __attribute__((weak))
+__glibcxx_assert_fail(const char* __file, int __line, const char* __function,
+ const char* __condition) {
+ MOZ_CRASH();
+}
+
+} // namespace std
+#endif
+
/* 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

@ -0,0 +1,12 @@
diff -up thunderbird-68.0/js/src/wasm/WasmSignalHandlers.cpp.aarch64-user_vfp thunderbird-68.0/js/src/wasm/WasmSignalHandlers.cpp
--- thunderbird-68.0/js/src/wasm/WasmSignalHandlers.cpp.aarch64-user_vfp 2019-09-05 08:57:46.443137916 +0200
+++ thunderbird-68.0/js/src/wasm/WasmSignalHandlers.cpp 2019-09-05 08:58:07.776196823 +0200
@@ -244,7 +244,7 @@ using mozilla::DebugOnly;
// emulation here.
#if defined(__linux__) && defined(__arm__)
-# define WASM_EMULATE_ARM_UNALIGNED_FP_ACCESS
+//# define WASM_EMULATE_ARM_UNALIGNED_FP_ACCESS
#endif
#ifdef WASM_EMULATE_ARM_UNALIGNED_FP_ACCESS

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"

84
build-big-endian.patch Normal file
View file

@ -0,0 +1,84 @@
diff -up firefox-60.0/gfx/skia/skia/include/core/SkColorPriv.h.big-endian firefox-60.0/gfx/skia/skia/include/core/SkColorPriv.h
--- firefox-60.0/gfx/skia/skia/include/core/SkColorPriv.h.big-endian 2018-04-09 22:50:48.000000000 +0200
+++ firefox-60.0/gfx/skia/skia/include/core/SkColorPriv.h 2018-04-18 11:51:38.748680174 +0200
@@ -54,18 +54,19 @@ static inline U8CPU SkUnitScalarClampToB
*
* Here we enforce this constraint.
*/
-
+/*
#ifdef SK_CPU_BENDIAN
#define SK_RGBA_R32_SHIFT 24
#define SK_RGBA_G32_SHIFT 16
#define SK_RGBA_B32_SHIFT 8
#define SK_RGBA_A32_SHIFT 0
#else
+*/
#define SK_RGBA_R32_SHIFT 0
#define SK_RGBA_G32_SHIFT 8
#define SK_RGBA_B32_SHIFT 16
#define SK_RGBA_A32_SHIFT 24
-#endif
+/*#endif*/
#define SkGetPackedA32(packed) ((uint32_t)((packed) << (24 - SK_A32_SHIFT)) >> 24)
#define SkGetPackedR32(packed) ((uint32_t)((packed) << (24 - SK_R32_SHIFT)) >> 24)
diff -up firefox-60.0/gfx/skia/skia/include/core/SkImageInfo.h.big-endian firefox-60.0/gfx/skia/skia/include/core/SkImageInfo.h
--- firefox-60.0/gfx/skia/skia/include/core/SkImageInfo.h.big-endian 2018-04-09 22:50:48.000000000 +0200
+++ firefox-60.0/gfx/skia/skia/include/core/SkImageInfo.h 2018-04-18 11:51:38.748680174 +0200
@@ -84,7 +84,8 @@ enum SkColorType {
#elif SK_PMCOLOR_BYTE_ORDER(R,G,B,A)
kN32_SkColorType = kRGBA_8888_SkColorType,
#else
- #error "SK_*32_SHIFT values must correspond to BGRA or RGBA byte order"
+ //#error "SK_*32_SHIFT values must correspond to BGRA or RGBA byte order"
+ kN32_SkColorType = kBGRA_8888_SkColorType
#endif
};
diff -up firefox-60.0/gfx/skia/skia/include/gpu/GrTypes.h.big-endian firefox-60.0/gfx/skia/skia/include/gpu/GrTypes.h
--- firefox-60.0/gfx/skia/skia/include/gpu/GrTypes.h.big-endian 2018-04-09 22:50:48.000000000 +0200
+++ firefox-60.0/gfx/skia/skia/include/gpu/GrTypes.h 2018-04-18 11:51:38.748680174 +0200
@@ -344,15 +344,13 @@ enum GrPixelConfig {
static const int kGrPixelConfigCnt = kLast_GrPixelConfig + 1;
// Aliases for pixel configs that match skia's byte order.
-#ifndef SK_CPU_LENDIAN
- #error "Skia gpu currently assumes little endian"
-#endif
#if SK_PMCOLOR_BYTE_ORDER(B,G,R,A)
static const GrPixelConfig kSkia8888_GrPixelConfig = kBGRA_8888_GrPixelConfig;
#elif SK_PMCOLOR_BYTE_ORDER(R,G,B,A)
static const GrPixelConfig kSkia8888_GrPixelConfig = kRGBA_8888_GrPixelConfig;
#else
- #error "SK_*32_SHIFT values must correspond to GL_BGRA or GL_RGBA format."
+ static const GrPixelConfig kSkia8888_GrPixelConfig = kBGRA_8888_GrPixelConfig;
+ static const GrPixelConfig kSkiaGamma8888_GrPixelConfig = kSBGRA_8888_GrPixelConfig;
#endif
/**
diff -up firefox-60.0/gfx/skia/skia/src/core/SkColorData.h.big-endian firefox-60.0/gfx/skia/skia/src/core/SkColorData.h
--- firefox-60.0/gfx/skia/skia/src/core/SkColorData.h.big-endian 2018-04-18 13:42:06.980476156 +0200
+++ firefox-60.0/gfx/skia/skia/src/core/SkColorData.h 2018-04-18 13:42:50.493520552 +0200
@@ -31,18 +31,19 @@
*
* Here we enforce this constraint.
*/
-
+/*
#ifdef SK_CPU_BENDIAN
#define SK_BGRA_B32_SHIFT 24
#define SK_BGRA_G32_SHIFT 16
#define SK_BGRA_R32_SHIFT 8
#define SK_BGRA_A32_SHIFT 0
#else
+*/
#define SK_BGRA_B32_SHIFT 0
#define SK_BGRA_G32_SHIFT 8
#define SK_BGRA_R32_SHIFT 16
#define SK_BGRA_A32_SHIFT 24
-#endif
+//#endif
#if defined(SK_PMCOLOR_IS_RGBA) && defined(SK_PMCOLOR_IS_BGRA)
#error "can't define PMCOLOR to be RGBA and BGRA"

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

View file

@ -1,12 +1,12 @@
diff -up firefox-115.0.2/toolkit/moz.configure.disable-elfhack firefox-115.0.2/toolkit/moz.configure
--- 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
diff -up thunderbird-68.0/toolkit/moz.configure.elfhack thunderbird-68.0/toolkit/moz.configure
--- thunderbird-68.0/toolkit/moz.configure.elfhack 2019-08-29 16:33:28.491708653 +0200
+++ thunderbird-68.0/toolkit/moz.configure 2019-08-29 16:33:58.019805525 +0200
@@ -1130,7 +1130,7 @@ with only_when('--enable-compile-environ
help='{Enable|Disable} elf hacks')
set_config("USE_ELF_HACK", use_elf_hack)
set_config('USE_ELF_HACK',
- depends_if('--enable-elf-hack')(lambda _: True))
+ depends_if('--enable-elf-hack')(lambda _: False))
@depends(check_build_environment)

View file

@ -0,0 +1,12 @@
diff -up mozilla-aurora/build/autoconf/icu.m4.icu-endian mozilla-aurora/build/autoconf/icu.m4
--- mozilla-aurora/build/autoconf/icu.m4.icu-endian 2016-12-09 09:11:01.227317790 +0100
+++ mozilla-aurora/build/autoconf/icu.m4 2016-12-09 09:18:40.608712247 +0100
@@ -78,7 +78,7 @@ if test -n "$USE_ICU"; then
# TODO: the l is actually endian-dependent
# We could make this set as 'l' or 'b' for little or big, respectively,
# but we'd need to check in a big-endian version of the file.
- ICU_DATA_FILE="icudt${version}l.dat"
+ ICU_DATA_FILE="icudt${version}b.dat"
dnl We won't build ICU data as a separate file when building
dnl JS standalone so that embedders don't have to deal with it.

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

@ -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.9.0"
[[bin]]
name = "dummy"

View file

@ -1,95 +0,0 @@
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
@@ -263,8 +263,20 @@ nsresult nsReadConfig::openAndEvaluateJS
if (NS_FAILED(rv)) return rv;
rv = NS_NewLocalFileInputStream(getter_AddRefs(inStr), jsFile);
- if (NS_FAILED(rv)) return rv;
+ if (NS_FAILED(rv)) {
+ // Look for cfg file in /etc/<application>/pref
+ rv = NS_GetSpecialDirectory(NS_APP_PREFS_SYSTEM_CONFIG_DIR,
+ getter_AddRefs(jsFile));
+ NS_ENSURE_SUCCESS(rv, rv);
+
+ rv = jsFile->AppendNative(nsLiteralCString("pref"));
+ NS_ENSURE_SUCCESS(rv, rv);
+ rv = jsFile->AppendNative(nsDependentCString(aFileName));
+ NS_ENSURE_SUCCESS(rv, rv);
+ rv = NS_NewLocalFileInputStream(getter_AddRefs(inStr), jsFile);
+ NS_ENSURE_SUCCESS(rv, rv);
+ }
} 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
//
// Thus, in the omni.jar case, we always load app-specific default
// preferences from omni.jar, whether or not `$app == $gre`.
+ //
+ // At very end load configuration from system config location:
+ // - /etc/firefox/pref/*.js
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 @@
#endif
#ifdef XP_UNIX
# include <ctype.h>
+# include "nsIXULAppInfo.h"
#endif
#ifdef XP_IOS
# include "UIKitDirProvider.h"
@@ -462,6 +463,17 @@ nsXREDirProvider::GetFile(const char* aP
rv = file->AppendNative(nsLiteralCString(PREF_OVERRIDE_DIRNAME));
NS_ENSURE_SUCCESS(rv, rv);
rv = EnsureDirectoryExists(file);
+ } else if (!strcmp(aProperty, NS_APP_PREFS_SYSTEM_CONFIG_DIR)) {
+ nsCString sysConfigDir = nsLiteralCString("/etc/");
+ nsCOMPtr<nsIXULAppInfo> appInfo = do_GetService("@mozilla.org/xre/app-info;1");
+ if (!appInfo)
+ return NS_ERROR_NOT_AVAILABLE;
+ nsCString appName;
+ appInfo->GetName(appName);
+ ToLowerCase(appName);
+ sysConfigDir.Append(appName);
+ NS_NewNativeLocalFile(sysConfigDir, 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
}
#endif
+ // Add /etc/<application>/pref/ directory if it exists
+ nsCOMPtr<nsIFile> systemPrefDir;
+ rv = NS_GetSpecialDirectory(NS_APP_PREFS_SYSTEM_CONFIG_DIR,
+ getter_AddRefs(systemPrefDir));
+ if (NS_SUCCEEDED(rv)) {
+ rv = systemPrefDir->AppendNative(nsLiteralCString("pref"));
+ if (NS_SUCCEEDED(rv))
+ directories.AppendObject(systemPrefDir);
+ }
+
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
@@ -58,6 +58,7 @@
#define NS_APP_PREFS_DEFAULTS_DIR_LIST "PrefDL"
#define NS_APP_PREFS_OVERRIDE_DIR \
"PrefDOverride" // Directory for per-profile defaults
+#define NS_APP_PREFS_SYSTEM_CONFIG_DIR "PrefSysConf" // Directory with system-wide configuration
#define NS_APP_USER_PROFILE_50_DIR "ProfD"
#define NS_APP_USER_PROFILE_LOCAL_50_DIR "ProfLD"

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-1353817.patch Normal file
View file

@ -0,0 +1,12 @@
diff -up thunderbird-68.0/gfx/skia/skia/include/private/SkNx.h.1353817 thunderbird-68.0/gfx/skia/skia/include/private/SkNx.h
--- thunderbird-68.0/gfx/skia/skia/include/private/SkNx.h.1353817 2019-08-29 16:31:20.892290062 +0200
+++ thunderbird-68.0/gfx/skia/skia/include/private/SkNx.h 2019-08-29 16:32:05.430436157 +0200
@@ -416,7 +416,7 @@ typedef SkNx<8, uint32_t> Sk8u;
// Include platform specific specializations if available.
#if !defined(SKNX_NO_SIMD) && SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_SSE2
#include "SkNx_sse.h"
-#elif !defined(SKNX_NO_SIMD) && defined(SK_ARM_HAS_NEON)
+#elif !defined(SKNX_NO_SIMD) && (defined(SK_ARM_HAS_NEON) || defined(SK_CPU_ARM64))
#include "SkNx_neon.h"
#else

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

@ -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,76 +0,0 @@
--- thunderbird-102.10.0/build/moz.configure/rust.configure.rustflags-commasplit 2023-03-21 06:16:03.000000000 -0700
+++ thunderbird-102.10.0/build/moz.configure/rust.configure 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))
--- thunderbird-102.10.0/python/mozbuild/mozbuild/configure/options.py.rustflags-commasplit 2023-03-21 06:16:09.000000000 -0700
+++ thunderbird-102.10.0/python/mozbuild/mozbuild/configure/options.py 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)

View file

@ -1,3 +1,4 @@
SHA512 (cbindgen-vendor.tar.xz) = 4127d3060577284eea29d697ccc2394742674f6094b7f497a95a0c3b8aa9e0494b720de8858ad31d4a6b0cd1b9586454f3c52c8088163c2709883d882e0136db
SHA512 (thunderbird-147.0.source.tar.xz) = d04a135f23572123d5cca41c2611704aa06cb81e0226c89c267dc527f59fb0d9d5d8b8a49cd126626c2fd934624c9d2420ae71dd10a912b3011f3342fbaf7511
SHA512 (thunderbird-langpacks-147.0-20260114.tar.xz) = e97f2894c0bbea00c35e5d8f0046d1d7112efb17d3af5d8a6f964c54352f9f6edbcbd4d41cc2595cb63e1116ae78680c9d42e65dc0eb0ff17e4a9d4ad97ec7ab
SHA512 (thunderbird-68.3.0.source.tar.xz) = 94474f91a4e7b927b94698340c31015fda6f25533ec2a4aad0712bd6d2f9a528184345ed7ddb0ff25e207375391a5c6252506538e4a4992614cd152db28d8cd5
SHA512 (thunderbird-langpacks-68.3.0-20191203.tar.xz) = a1f3931ddd7290e7e063b273515c5bb9307ce28045150b445af46f37d0f9ed96c8e86547271c384f6de8020fb07a9d5bb3744e824c2ceb1cb2d6ff3b8ccdc009
SHA512 (cbindgen-vendor.tar.xz) = 88afa0bc6af525cbb46bc75578b90419b28b95b396d5002fbf299a78a173681b840096ff83ef6e48553d1a5e0aa04e79383ab4d09bf431f3b864fcbacc7de46d
SHA512 (lightning-langpacks-68.3.0.tar.xz) = 88df26a4ea8214946ba738be79eb3aef09fd57fb5febbd56e92511dab2caa549d1d60dea313eec834225321d36752bd32d9f95fa29291663818a4314b4252a1c

12
thunderbird-debug.patch Normal file
View file

@ -0,0 +1,12 @@
diff -up thunderbird-60.6.1/intl/locale/LocaleService.cpp.debug thunderbird-60.6.1/intl/locale/LocaleService.cpp
--- thunderbird-60.6.1/intl/locale/LocaleService.cpp.debug 2019-05-15 08:15:14.602872505 +0200
+++ thunderbird-60.6.1/intl/locale/LocaleService.cpp 2019-05-15 08:15:53.717635322 +0200
@@ -643,8 +643,6 @@ LocaleService::GetDefaultLocale(nsACStri
// just use our hard-coded default below.
GetGREFileContents("update.locale", &locale);
locale.Trim(" \t\n\r");
- // This should never be empty.
- MOZ_ASSERT(!locale.IsEmpty());
if (SanitizeForBCP47(locale, true)) {
mDefaultLocale.Assign(locale);
}

View file

@ -1,41 +1,24 @@
mk_add_options MOZ_CO_PROJECT=mail
ac_add_options --enable-application=comm/mail
mk_add_options AUTOCONF=autoconf-2.13
ac_add_options --enable-default-toolkit=cairo-gtk3-wayland
ac_add_options --prefix="$PREFIX"
ac_add_options --libdir="$LIBDIR"
ac_add_options --with-system-jpeg
ac_add_options --with-system-zlib
ac_add_options --with-system-libvpx
ac_add_options --disable-tests
ac_add_options --disable-strip
#ac_add_options --enable-libnotify
ac_add_options --enable-necko-wifi
# temporary disable system cairo, because compilation fails
ac_add_options --disable-necko-wifi
ac_add_options --disable-updater
ac_add_options --enable-chrome-format=omni
ac_add_options --enable-pulseaudio
ac_add_options --enable-av1
ac_add_options --without-system-icu
ac_add_options --enable-release
ac_add_options --update-channel=esr
ac_add_options --allow-addon-sideload
ac_add_options --enable-js-shell
ac_add_options --with-unsigned-addon-scopes=app,system
ac_add_options --without-wasm-sandboxed-libraries
ac_add_options --disable-bootstrap
ac_add_options --without-sysroot
ac_add_options --enable-startup-notification
ac_add_options --with-system-icu
#mk_add_options AUTOCONF=autoconf-2.13
#ac_add_options --enable-default-toolkit=cairo-gtk3-wayland
#ac_add_options --prefix="$PREFIX"
#ac_add_options --libdir="$LIBDIR"
#ac_add_options --with-system-jpeg
#ac_add_options --with-system-zlib
#ac_add_options --with-system-libvpx
#ac_add_options --disable-tests
#ac_add_options --disable-strip
## temporary disable system cairo, because compilation fails
#ac_add_options --disable-necko-wifi
#ac_add_options --disable-updater
#ac_add_options --with-system-icu
# lightning related
ac_add_options --enable-calendar
export BUILD_OFFICIAL=1
export MOZILLA_OFFICIAL=1

View file

@ -15,13 +15,11 @@ pref("mailnews.database.global.indexer.enabled", false);
/* Do not switch to Smart Folders after upgrade to 3.0b4 */
pref("mail.folder.views.version", "1");
pref("extensions.shownSelectionUI", true);
pref("extensions.autoDisableScopes", 0);
pref("extensions.autoDisableScope", 0);
/* For rhbz#1024232 */
pref("ui.SpellCheckerUnderlineStyle", 1);
/* Workaround for rhbz#1753011 */
pref("spellchecker.dictionary_path", "/usr/share/myspell");
/* Workaround for rhbz#1134876 */
pref("javascript.options.baselinejit", false);
/* Workaround for rhbz#1110291 */
@ -30,7 +28,4 @@ pref("network.negotiate-auth.allow-insecure-ntlm-v1", true);
pref("security.use_mozillapkix_verification", false);
/* Use OS settings for UI language */
pref("intl.locale.requested", "");
/* Disable telemetry */
pref("datareporting.healthreport.uploadEnabled", false);
pref("datareporting.policy.dataSubmissionEnabled", false);
pref("toolkit.telemetry.archive.enabled", false);

View file

@ -3,7 +3,7 @@ Version=1.0
Name=Thunderbird on Wayland
GenericName=Email
Comment=Send and Receive Email
Exec=thunderbird-wayland --name thunderbird-wayland %u
Exec=thunderbird-wayland %u
TryExec=thunderbird-wayland
Icon=thunderbird
Terminal=false

View file

@ -2,5 +2,11 @@
#
# Run Thunderbird under Wayland
#
export MOZ_ENABLE_WAYLAND=1
##
## Enable Wayland backend?
##
if [ "$XDG_CURRENT_DESKTOP" == "GNOME" ]; then
export MOZ_ENABLE_WAYLAND=1
fi
exec __PREFIX__/bin/thunderbird "$@"

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

@ -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.
@ -77,15 +74,6 @@ export MOZ_ALLOW_DOWNGRADE=1
# export MOZ_DISABLE_LANGPACKS
#
##
## Use D-Bus remote exclusively when there's Wayland display.
##
if [ "$WAYLAND_DISPLAY" ]; then
export MOZ_DBUS_REMOTE=1
fi
__WAYLAND_X11_PLACEHOLDER__
##
## Automatically installed langpacks are tracked by .fedora-langpack-install
## config file.

File diff suppressed because it is too large Load diff