Sync snapshot of Thunderbird 128 rebase into RHEL 10

To drop the requirements on dbus-glib which we want to remove from RHEL
10.

Related: RHEL-24330
Related: DESKTOP-742
Related: RHELMISC-5474
This commit is contained in:
Tomas Popela 2024-07-02 14:17:14 +02:00
parent d4845d49ee
commit 15c2e87d6c
8 changed files with 85 additions and 229 deletions

2
.gitignore vendored
View File

@ -441,3 +441,5 @@ thunderbird-langpacks-3.1.2-20100803.tar.bz2
/nss-3.90.0-3.el9_0.src.rpm /nss-3.90.0-3.el9_0.src.rpm
/thunderbird-115.12.1.processed-source.tar.xz /thunderbird-115.12.1.processed-source.tar.xz
/thunderbird-langpacks-115.12.1-20240618.tar.xz /thunderbird-langpacks-115.12.1-20240618.tar.xz
/thunderbird-128.0b4.processed-source.tar.xz
/thunderbird-langpacks-128.0b4-20240627.tar.xz

View File

@ -1,127 +0,0 @@
From 263682c9a29395055f3b3afe2d97be1828a6223f Mon Sep 17 00:00:00 2001
From: Jerome Jiang <jianj@google.com>
Date: Thu, 30 Jun 2022 13:48:56 -0400
Subject: [PATCH] Fix bug with smaller width bigger size
Fixed previous patch that clusterfuzz failed on.
Bug: webm:1642
Change-Id: If0e08e72abd2e042efe4dcfac21e4cc51afdfdb9
---
test/resize_test.cc | 11 +++--------
vp9/common/vp9_alloccommon.c | 13 ++++++-------
vp9/encoder/vp9_encoder.c | 27 +++++++++++++++++++++++++--
3 files changed, 34 insertions(+), 17 deletions(-)
diff --git a/test/resize_test.cc b/test/resize_test.cc
index fd1c2a92de6..20ad2229b46 100644
--- a/test/resize_test.cc
+++ b/test/resize_test.cc
@@ -102,11 +102,8 @@ void ScaleForFrameNumber(unsigned int frame, unsigned int initial_w,
if (frame < 30) {
return;
}
- if (frame < 100) {
- *w = initial_w * 7 / 10;
- *h = initial_h * 16 / 10;
- return;
- }
+ *w = initial_w * 7 / 10;
+ *h = initial_h * 16 / 10;
return;
}
if (frame < 10) {
@@ -559,9 +556,7 @@ TEST_P(ResizeRealtimeTest, TestExternalResizeWorks) {
}
}
-// TODO(https://crbug.com/webm/1642): This causes a segfault in
-// init_encode_frame_mb_context().
-TEST_P(ResizeRealtimeTest, DISABLED_TestExternalResizeSmallerWidthBiggerSize) {
+TEST_P(ResizeRealtimeTest, TestExternalResizeSmallerWidthBiggerSize) {
ResizingVideoSource video;
video.flag_codec_ = true;
video.smaller_width_larger_size_ = true;
diff --git a/vp9/common/vp9_alloccommon.c b/vp9/common/vp9_alloccommon.c
index e53883f621d..9e73e40ea09 100644
--- a/vp9/common/vp9_alloccommon.c
+++ b/vp9/common/vp9_alloccommon.c
@@ -135,13 +135,6 @@ int vp9_alloc_context_buffers(VP9_COMMON *cm, int width, int height) {
cm->free_mi(cm);
if (cm->alloc_mi(cm, new_mi_size)) goto fail;
}
-
- if (cm->seg_map_alloc_size < cm->mi_rows * cm->mi_cols) {
- // Create the segmentation map structure and set to 0.
- free_seg_map(cm);
- if (alloc_seg_map(cm, cm->mi_rows * cm->mi_cols)) goto fail;
- }
-
if (cm->above_context_alloc_cols < cm->mi_cols) {
vpx_free(cm->above_context);
cm->above_context = (ENTROPY_CONTEXT *)vpx_calloc(
@@ -156,6 +149,12 @@ int vp9_alloc_context_buffers(VP9_COMMON *cm, int width, int height) {
cm->above_context_alloc_cols = cm->mi_cols;
}
+ if (cm->seg_map_alloc_size < cm->mi_rows * cm->mi_cols) {
+ // Create the segmentation map structure and set to 0.
+ free_seg_map(cm);
+ if (alloc_seg_map(cm, cm->mi_rows * cm->mi_cols)) goto fail;
+ }
+
if (vp9_alloc_loop_filter(cm)) goto fail;
return 0;
diff --git a/vp9/encoder/vp9_encoder.c b/vp9/encoder/vp9_encoder.c
index 69a4e3c314f..e3ba294c32f 100644
--- a/vp9/encoder/vp9_encoder.c
+++ b/vp9/encoder/vp9_encoder.c
@@ -2047,6 +2047,17 @@ static void alloc_copy_partition_data(VP9_COMP *cpi) {
}
}
+static void free_copy_partition_data(VP9_COMP *cpi) {
+ vpx_free(cpi->prev_partition);
+ cpi->prev_partition = NULL;
+ vpx_free(cpi->prev_segment_id);
+ cpi->prev_segment_id = NULL;
+ vpx_free(cpi->prev_variance_low);
+ cpi->prev_variance_low = NULL;
+ vpx_free(cpi->copied_frame_cnt);
+ cpi->copied_frame_cnt = NULL;
+}
+
void vp9_change_config(struct VP9_COMP *cpi, const VP9EncoderConfig *oxcf) {
VP9_COMMON *const cm = &cpi->common;
RATE_CONTROL *const rc = &cpi->rc;
@@ -2126,6 +2137,8 @@ void vp9_change_config(struct VP9_COMP *cpi, const VP9EncoderConfig *oxcf) {
new_mi_size = cm->mi_stride * calc_mi_size(cm->mi_rows);
if (cm->mi_alloc_size < new_mi_size) {
vp9_free_context_buffers(cm);
+ vp9_free_pc_tree(&cpi->td);
+ vpx_free(cpi->mbmi_ext_base);
alloc_compressor_data(cpi);
realloc_segmentation_maps(cpi);
cpi->initial_width = cpi->initial_height = 0;
@@ -2144,8 +2157,18 @@ void vp9_change_config(struct VP9_COMP *cpi, const VP9EncoderConfig *oxcf) {
update_frame_size(cpi);
if (last_w != cpi->oxcf.width || last_h != cpi->oxcf.height) {
- memset(cpi->consec_zero_mv, 0,
- cm->mi_rows * cm->mi_cols * sizeof(*cpi->consec_zero_mv));
+ vpx_free(cpi->consec_zero_mv);
+ CHECK_MEM_ERROR(
+ &cm->error, cpi->consec_zero_mv,
+ vpx_calloc(cm->mi_rows * cm->mi_cols, sizeof(*cpi->consec_zero_mv)));
+
+ vpx_free(cpi->skin_map);
+ CHECK_MEM_ERROR(
+ &cm->error, cpi->skin_map,
+ vpx_calloc(cm->mi_rows * cm->mi_cols, sizeof(cpi->skin_map[0])));
+
+ free_copy_partition_data(cpi);
+ alloc_copy_partition_data(cpi);
if (cpi->oxcf.aq_mode == CYCLIC_REFRESH_AQ)
vp9_cyclic_refresh_reset_resize(cpi);
rc->rc_1_frame = 0;

View File

@ -1,12 +1,12 @@
diff -up firefox-115.0.2/toolkit/moz.configure.disable-elfhack firefox-115.0.2/toolkit/moz.configure diff -up firefox-128.0/toolkit/moz.configure.disable-elfhack firefox-128.0/toolkit/moz.configure
--- firefox-115.0.2/toolkit/moz.configure.disable-elfhack 2023-07-18 12:21:22.507358334 +0200 --- firefox-128.0/toolkit/moz.configure.disable-elfhack 2024-06-19 17:24:29.964976617 +0200
+++ firefox-115.0.2/toolkit/moz.configure 2023-07-18 12:52:55.972727498 +0200 +++ firefox-128.0/toolkit/moz.configure 2024-06-19 17:24:53.015843805 +0200
@@ -1520,7 +1520,7 @@ with only_when("--enable-compile-environ @@ -1553,7 +1553,7 @@ with only_when("--enable-compile-environ
"Cannot enable elfhack with lld." @depends(host, target)
" Use --enable-linker=bfd, --enable-linker=gold, or --disable-elf-hack" def has_elfhack(host, target):
return (
- target.kernel == "Linux"
+ False and target.kernel == "Linux"
and host.kernel == "Linux"
and target.cpu in ("arm", "aarch64", "x86", "x86_64")
) )
- return True
+ return False
set_config("USE_ELF_HACK", use_elf_hack)

View File

@ -1,10 +1,10 @@
diff -up firefox-55.0/browser/app/profile/firefox.js.addons firefox-55.0/browser/app/profile/firefox.js diff -up firefox-128.0/browser/app/profile/firefox.js.addons firefox-128.0/browser/app/profile/firefox.js
--- firefox-55.0/browser/app/profile/firefox.js.addons 2017-08-02 10:58:30.566363833 +0200 --- firefox-128.0/browser/app/profile/firefox.js.addons 2024-06-13 11:47:04.255428350 +0200
+++ firefox-55.0/browser/app/profile/firefox.js 2017-08-02 10:59:15.377216959 +0200 +++ firefox-128.0/browser/app/profile/firefox.js 2024-06-13 11:53:00.442837371 +0200
@@ -65,7 +65,8 @@ pref("extensions.systemAddon.update.url" @@ -56,7 +56,8 @@ pref("extensions.systemAddon.update.enab
// Disable add-ons that are not installed by the user in all scopes by default. // Disable add-ons that are not installed by the user in all scopes by default.
// See the SCOPE constants in AddonManager.jsm for values to use here. // See the SCOPE constants in AddonManager.sys.mjs for values to use here.
-pref("extensions.autoDisableScopes", 15); -pref("extensions.autoDisableScopes", 15);
+pref("extensions.autoDisableScopes", 0); +pref("extensions.autoDisableScopes", 0);
+pref("extensions.showMismatchUI", false); +pref("extensions.showMismatchUI", false);

View File

@ -1,23 +1,20 @@
# HG changeset patch diff -up firefox-128.0/gfx/2d/DrawTargetSkia.cpp.mozilla-bmo1504834-part1 firefox-128.0/gfx/2d/DrawTargetSkia.cpp
# Parent 9fcbd287056a40084b1e679f787bf683b291f323 --- firefox-128.0/gfx/2d/DrawTargetSkia.cpp.mozilla-bmo1504834-part1 2024-06-12 15:02:55.000000000 +0200
Taken from https://bugzilla.mozilla.org/show_bug.cgi?id=1504834 +++ firefox-128.0/gfx/2d/DrawTargetSkia.cpp 2024-06-13 11:36:54.550728034 +0200
@@ -156,8 +156,8 @@ static IntRect CalculateSurfaceBounds(co
diff --git a/gfx/2d/DrawTargetSkia.cpp b/gfx/2d/DrawTargetSkia.cpp
--- a/gfx/2d/DrawTargetSkia.cpp
+++ b/gfx/2d/DrawTargetSkia.cpp
@@ -156,7 +156,8 @@ static IntRect CalculateSurfaceBounds(co
} }
static const int kARGBAlphaOffset = static const int kARGBAlphaOffset =
- SurfaceFormat::A8R8G8B8_UINT32 == SurfaceFormat::B8G8R8A8 ? 3 : 0; - SurfaceFormat::A8R8G8B8_UINT32 == SurfaceFormat::B8G8R8A8 ? 3 : 0;
-
+ 0; // Skia is always BGRA SurfaceFormat::A8R8G8B8_UINT32 == + 0; // Skia is always BGRA SurfaceFormat::A8R8G8B8_UINT32 ==
+ // SurfaceFormat::B8G8R8A8 ? 3 : 0; + // SurfaceFormat::B8G8R8A8 ? 3 : 0;
static bool VerifyRGBXFormat(uint8_t* aData, const IntSize& aSize, static bool VerifyRGBXFormat(uint8_t* aData, const IntSize& aSize,
const int32_t aStride, SurfaceFormat aFormat) { const int32_t aStride, SurfaceFormat aFormat) {
diff --git a/gfx/2d/Types.h b/gfx/2d/Types.h if (aFormat != SurfaceFormat::B8G8R8X8 || aSize.IsEmpty()) {
--- a/gfx/2d/Types.h diff -up firefox-128.0/gfx/2d/Types.h.mozilla-bmo1504834-part1 firefox-128.0/gfx/2d/Types.h
+++ b/gfx/2d/Types.h --- firefox-128.0/gfx/2d/Types.h.mozilla-bmo1504834-part1 2024-06-12 15:02:56.000000000 +0200
+++ firefox-128.0/gfx/2d/Types.h 2024-06-13 11:36:54.551728036 +0200
@@ -89,18 +89,11 @@ enum class SurfaceFormat : int8_t { @@ -89,18 +89,11 @@ enum class SurfaceFormat : int8_t {
// This represents the unknown format. // This represents the unknown format.
UNKNOWN, // TODO: Replace uses with Maybe<SurfaceFormat>. UNKNOWN, // TODO: Replace uses with Maybe<SurfaceFormat>.
@ -40,10 +37,10 @@ diff --git a/gfx/2d/Types.h b/gfx/2d/Types.h
// The following values are OS and endian-independent synonyms. // The following values are OS and endian-independent synonyms.
// //
diff --git a/gfx/skia/skia/modules/skcms/skcms.cc b/gfx/skia/skia/modules/skcms/skcms.cc diff -up firefox-128.0/gfx/skia/skia/modules/skcms/skcms.cc.mozilla-bmo1504834-part1 firefox-128.0/gfx/skia/skia/modules/skcms/skcms.cc
--- a/gfx/skia/skia/modules/skcms/skcms.cc --- firefox-128.0/gfx/skia/skia/modules/skcms/skcms.cc.mozilla-bmo1504834-part1 2024-06-12 15:02:57.000000000 +0200
+++ b/gfx/skia/skia/modules/skcms/skcms.cc +++ firefox-128.0/gfx/skia/skia/modules/skcms/skcms.cc 2024-06-13 11:38:45.377835856 +0200
@@ -30,6 +30,8 @@ @@ -31,6 +31,8 @@
#include <avx512fintrin.h> #include <avx512fintrin.h>
#include <avx512dqintrin.h> #include <avx512dqintrin.h>
#endif #endif
@ -51,7 +48,7 @@ diff --git a/gfx/skia/skia/modules/skcms/skcms.cc b/gfx/skia/skia/modules/skcms/
+ #define SKCMS_PORTABLE + #define SKCMS_PORTABLE
#endif #endif
static bool runtime_cpu_detection = true; using namespace skcms_private;
@@ -324,20 +326,28 @@ enum { @@ -324,20 +326,28 @@ enum {
static uint16_t read_big_u16(const uint8_t* ptr) { static uint16_t read_big_u16(const uint8_t* ptr) {
uint16_t be; uint16_t be;

View File

@ -1,9 +1,7 @@
diff --git a/media/ffvpx/libavcodec/allcodecs.c b/media/ffvpx/libavcodec/allcodecs.c diff -up firefox-128.0/media/ffvpx/libavcodec/allcodecs.c.mozilla-bmo1789216-disable-av1 firefox-128.0/media/ffvpx/libavcodec/allcodecs.c
--- a/media/ffvpx/libavcodec/allcodecs.c --- firefox-128.0/media/ffvpx/libavcodec/allcodecs.c.mozilla-bmo1789216-disable-av1 2024-06-12 15:03:01.000000000 +0200
+++ b/media/ffvpx/libavcodec/allcodecs.c +++ firefox-128.0/media/ffvpx/libavcodec/allcodecs.c 2024-06-13 11:44:10.637215674 +0200
@@ -755,12 +755,15 @@ @@ -764,8 +764,11 @@ extern const FFCodec ff_libaribb24_decod
extern FFCodec ff_libaom_av1_encoder;
extern const FFCodec ff_libaribb24_decoder;
extern const FFCodec ff_libcelt_decoder; extern const FFCodec ff_libcelt_decoder;
extern const FFCodec ff_libcodec2_encoder; extern const FFCodec ff_libcodec2_encoder;
extern const FFCodec ff_libcodec2_decoder; extern const FFCodec ff_libcodec2_decoder;
@ -15,11 +13,7 @@ diff --git a/media/ffvpx/libavcodec/allcodecs.c b/media/ffvpx/libavcodec/allcode
extern const FFCodec ff_libfdk_aac_encoder; extern const FFCodec ff_libfdk_aac_encoder;
extern const FFCodec ff_libfdk_aac_decoder; extern const FFCodec ff_libfdk_aac_decoder;
extern const FFCodec ff_libgsm_encoder; extern const FFCodec ff_libgsm_encoder;
extern const FFCodec ff_libgsm_decoder; @@ -793,7 +796,6 @@ extern const FFCodec ff_libspeex_decoder
extern const FFCodec ff_libgsm_ms_encoder;
@@ -783,11 +786,10 @@
extern const FFCodec ff_libspeex_encoder;
extern const FFCodec ff_libspeex_decoder;
extern const FFCodec ff_libsvtav1_encoder; extern const FFCodec ff_libsvtav1_encoder;
extern const FFCodec ff_libtheora_encoder; extern const FFCodec ff_libtheora_encoder;
extern const FFCodec ff_libtwolame_encoder; extern const FFCodec ff_libtwolame_encoder;
@ -27,14 +21,10 @@ diff --git a/media/ffvpx/libavcodec/allcodecs.c b/media/ffvpx/libavcodec/allcode
extern const FFCodec ff_libvo_amrwbenc_encoder; extern const FFCodec ff_libvo_amrwbenc_encoder;
extern const FFCodec ff_libvorbis_encoder; extern const FFCodec ff_libvorbis_encoder;
extern const FFCodec ff_libvorbis_decoder; extern const FFCodec ff_libvorbis_decoder;
extern const FFCodec ff_libvpx_vp8_encoder; diff -up firefox-128.0/media/ffvpx/libavcodec/codec_list.c.mozilla-bmo1789216-disable-av1 firefox-128.0/media/ffvpx/libavcodec/codec_list.c
extern const FFCodec ff_libvpx_vp8_decoder; --- firefox-128.0/media/ffvpx/libavcodec/codec_list.c.mozilla-bmo1789216-disable-av1 2024-06-13 11:40:12.668924117 +0200
diff --git a/media/ffvpx/libavcodec/codec_list.c b/media/ffvpx/libavcodec/codec_list.c +++ firefox-128.0/media/ffvpx/libavcodec/codec_list.c 2024-06-13 11:44:41.411253372 +0200
--- a/media/ffvpx/libavcodec/codec_list.c @@ -11,12 +11,14 @@ static const FFCodec * const codec_list[
+++ b/media/ffvpx/libavcodec/codec_list.c
@@ -9,12 +9,14 @@
&ff_flac_decoder,
#endif
#if CONFIG_MP3_DECODER #if CONFIG_MP3_DECODER
&ff_mp3_decoder, &ff_mp3_decoder,
#endif #endif
@ -46,25 +36,21 @@ diff --git a/media/ffvpx/libavcodec/codec_list.c b/media/ffvpx/libavcodec/codec_
&ff_av1_decoder, &ff_av1_decoder,
#endif #endif
+#endif +#endif
NULL }; #if CONFIG_LIBVORBIS_DECODER
diff --git a/media/ffvpx/libavcodec/moz.build b/media/ffvpx/libavcodec/moz.build &ff_libvorbis_decoder,
--- a/media/ffvpx/libavcodec/moz.build #endif
+++ b/media/ffvpx/libavcodec/moz.build diff -up firefox-128.0/media/ffvpx/libavcodec/moz.build.mozilla-bmo1789216-disable-av1 firefox-128.0/media/ffvpx/libavcodec/moz.build
@@ -84,11 +84,10 @@ --- firefox-128.0/media/ffvpx/libavcodec/moz.build.mozilla-bmo1789216-disable-av1 2024-06-13 11:40:12.669924118 +0200
'cbs.c', +++ firefox-128.0/media/ffvpx/libavcodec/moz.build 2024-06-13 11:45:22.867304151 +0200
'cbs_av1.c', @@ -94,7 +94,6 @@ if not CONFIG['MOZ_FFVPX_AUDIOONLY']:
'golomb.c',
'h264pred.c',
'imgconvert.c', 'imgconvert.c',
'libaom.c',
'libaomenc.c',
- 'libdav1d.c', - 'libdav1d.c',
'libvpxdec.c',
'libvpxenc.c',
'mathtables.c', 'mathtables.c',
'qsv_api.c', @@ -119,10 +118,16 @@ if not CONFIG['MOZ_FFVPX_AUDIOONLY']:
'raw.c',
'videodsp.c',
'vp8.c',
@@ -107,14 +106,19 @@
'vp9mvs.c',
'vp9prob.c',
'vp9recon.c', 'vp9recon.c',
'vpx_rac.c', 'vpx_rac.c',
] ]
@ -81,9 +67,7 @@ diff --git a/media/ffvpx/libavcodec/moz.build b/media/ffvpx/libavcodec/moz.build
+ 'libdav1d.c', + 'libdav1d.c',
+ ] + ]
+ +
if CONFIG['MOZ_WAYLAND']: +
if CONFIG["MOZ_WIDGET_TOOLKIT"] == "gtk":
LOCAL_INCLUDES += ['/media/mozva'] LOCAL_INCLUDES += ['/media/mozva']
SOURCES += [ SOURCES += [
'vaapi_av1.c',
'vaapi_decode.c',

View File

@ -1,6 +1,6 @@
SHA512 (cbindgen-vendor.tar.xz) = 161811f4adfc74e5d92871c78139704d32e1e1ad6b615c85353de300d9647a68f1ca8b1c953f7cc5539d861e9e8d8e42892cae757a3eafea78804e19bc323c16 SHA512 (cbindgen-vendor.tar.xz) = 0c7a40033ccd38dadd30ad064feef390444af4562be07d3dfd0c4cccc55821b01b5228ddee367d0af3bd1b4ef9b1552cdd104506579b020ac1940a7c536b8b68
SHA512 (nspr-4.35.0-1.el8_1.src.rpm) = 5123a443fcc42602e31104999be339ae899eb7b1f1e2f1ea87ba4f283eb894d08ab568e421dba1df4770f23be91ff88aa6a0748bce7feef31ed88bee5bdecb2c SHA512 (nspr-4.35.0-1.el8_1.src.rpm) = 5123a443fcc42602e31104999be339ae899eb7b1f1e2f1ea87ba4f283eb894d08ab568e421dba1df4770f23be91ff88aa6a0748bce7feef31ed88bee5bdecb2c
SHA512 (nss-3.90.0-2.el8_1.src.rpm) = 850cd6a343e62d34ad28ac356db03371f0b1f018274901cc700cc4f8138c9929eb159bbb1ebe167f727a69f6499423a54581ca65ed655ee468f1cae8450df85c SHA512 (nss-3.90.0-2.el8_1.src.rpm) = 850cd6a343e62d34ad28ac356db03371f0b1f018274901cc700cc4f8138c9929eb159bbb1ebe167f727a69f6499423a54581ca65ed655ee468f1cae8450df85c
SHA512 (nss-3.90.0-3.el9_0.src.rpm) = f321b9c1bda0b09eee564e2903023435851a4ff2e55bdd5b03012ca51be7999b18d85061f874065d0b25913721eb574f49746a3111f8f1cdd5b21268dddd8367 SHA512 (nss-3.90.0-3.el9_0.src.rpm) = f321b9c1bda0b09eee564e2903023435851a4ff2e55bdd5b03012ca51be7999b18d85061f874065d0b25913721eb574f49746a3111f8f1cdd5b21268dddd8367
SHA512 (thunderbird-115.12.1.processed-source.tar.xz) = bef06c1136069d5ba76ce4ca759f2268b61e1424ff14de9ec831a49198954fb1e39f3d28709e838f5eb8b119b35454c40f03bc3f98ec7f7325c52ae05cb3c575 SHA512 (thunderbird-128.0b4.processed-source.tar.xz) = c026d4daf41779a9cb989814895aea617ace3962a43524f5fef376c8f962ecf247c2f70824ade6b97d37859dd230e8fd08d46347a893412878adf1c65f7b03d8
SHA512 (thunderbird-langpacks-115.12.1-20240618.tar.xz) = 033d0641b2c1445fa0af7aa3a0e629bdbcea2d408f356519a689d502bac547bcf74f262fc414bc103cc646ac06be754bd1beb68e86e0d144b73faa74c5ee04d7 SHA512 (thunderbird-langpacks-128.0b4-20240627.tar.xz) = b6be6f5d8031bda0d3f47ea0884c46fa2136498e1ed8aed1407bf373474a450133a51ead9c3f372990ee1d7a1b3c1d04ae77b34f39d0a8c8d5896dfc94a63503

View File

@ -43,20 +43,22 @@ end}
%global rhel_minor_version %{lua:print(dist_to_rhel_minor(rpm.expand("%dist")))} %global rhel_minor_version %{lua:print(dist_to_rhel_minor(rpm.expand("%dist")))}
# System libraries options # System libraries options
%global system_nss 1 %global system_nss 0
%global bundle_nss 0 %global bundle_nss 0
%if 0%{?rhel} == 8 %if 0%{?rhel} == 8
%if %{rhel_minor_version} <= 6 %if %{rhel_minor_version} <= 6
%global bundle_nss 1 #FIXME 1
%global system_nss 1 %global bundle_nss 0
%global system_nss 0
%global _build_id_links none %global _build_id_links none
%endif %endif
%endif %endif
%if 0%{?rhel} == 9 %if 0%{?rhel} == 9
%if %{rhel_minor_version} <= 0 %if %{rhel_minor_version} <= 0
%global bundle_nss 1 #FIXME 1
%global system_nss 1 %global bundle_nss 0
%global system_nss 0
%global _build_id_links none %global _build_id_links none
%endif %endif
%endif %endif
@ -65,8 +67,8 @@ end}
%global llvm_version 7.0 %global llvm_version 7.0
%global nspr_version 4.35 %global nspr_version 4.35
%global nspr_version_max 4.36 %global nspr_version_max 4.36
%global nss_version 3.90 %global nss_version 3.100
%global nss_version_max 3.91 %global nss_version_max 3.101
%global rust_version 1.66 %global rust_version 1.66
%global system_libvpx 0 %global system_libvpx 0
@ -75,7 +77,8 @@ end}
%global use_gcc_ts 0 %global use_gcc_ts 0
%global use_llvm_ts 0 %global use_llvm_ts 0
%global use_nodejs_scl 0 %global use_nodejs_scl 0
%global use_rust_ts 1 #FIXME switch to 1
%global use_rust_ts 0
%global use_python3_scl 0 %global use_python3_scl 0
%global nodejs_build_req nodejs %global nodejs_build_req nodejs
@ -119,7 +122,7 @@ end}
%define mozappdir %{_libdir}/thunderbird %define mozappdir %{_libdir}/thunderbird
%global langpackdir %{mozappdir}/extensions %global langpackdir %{mozappdir}/extensions
%define bundled_install_path %{mozappdir}/bundled %define bundled_install_path %{mozappdir}/bundled
##global pre_version b2 %global pre_version b4
# Workaround the dreaded "upstream source file changed content" rpminspect failure. # Workaround the dreaded "upstream source file changed content" rpminspect failure.
# If set to .b2 or .b3 ... the processed source file needs to be renamed before upload, e.g. # If set to .b2 or .b3 ... the processed source file needs to be renamed before upload, e.g.
# thunderbird-102.8.0.b2.processed-source.tar.xz # thunderbird-102.8.0.b2.processed-source.tar.xz
@ -134,7 +137,7 @@ end}
Summary: Mozilla Thunderbird mail/newsgroup client Summary: Mozilla Thunderbird mail/newsgroup client
Name: thunderbird Name: thunderbird
Version: 115.12.1 Version: 128.0
Release: 1%{?dist} Release: 1%{?dist}
URL: http://www.mozilla.org/projects/thunderbird/ URL: http://www.mozilla.org/projects/thunderbird/
License: MPLv1.1 or GPLv2+ or LGPLv2+ License: MPLv1.1 or GPLv2+ or LGPLv2+
@ -165,7 +168,7 @@ ExcludeArch: aarch64 s390 ppc ppc64
#Source0: https://archive.mozilla.org/pub/thunderbird/releases/%%{version}%%{?pre_version}/source/thunderbird-%%{version}%%{?pre_version}.processed-source.tar.xz #Source0: https://archive.mozilla.org/pub/thunderbird/releases/%%{version}%%{?pre_version}/source/thunderbird-%%{version}%%{?pre_version}.processed-source.tar.xz
Source0: thunderbird-%{version}%{?pre_version}%{?buildnum}.processed-source.tar.xz Source0: thunderbird-%{version}%{?pre_version}%{?buildnum}.processed-source.tar.xz
%if %{with langpacks} %if %{with langpacks}
Source1: thunderbird-langpacks-%{version}-20240618.tar.xz Source1: thunderbird-langpacks-%{version}%{?pre_version}-20240627.tar.xz
%endif %endif
Source2: cbindgen-vendor.tar.xz Source2: cbindgen-vendor.tar.xz
Source3: process-official-tarball Source3: process-official-tarball
@ -219,7 +222,6 @@ Patch154: firefox-nss-addon-hack.patch
Patch155: rhbz-1354671.patch Patch155: rhbz-1354671.patch
# ---- Security patches ---- # ---- Security patches ----
Patch301: CVE-2023-44488-libvpx.patch
# BUILD REQURES/REQUIRES # BUILD REQURES/REQUIRES
%if %{?system_nss} && !0%{?bundle_nss} %if %{?system_nss} && !0%{?bundle_nss}
@ -236,7 +238,6 @@ BuildRequires: libvpx-devel >= 1.8.2
%endif %endif
BuildRequires: bzip2-devel BuildRequires: bzip2-devel
BuildRequires: dbus-glib-devel
BuildRequires: desktop-file-utils BuildRequires: desktop-file-utils
BuildRequires: libappstream-glib BuildRequires: libappstream-glib
BuildRequires: libjpeg-devel BuildRequires: libjpeg-devel
@ -336,6 +337,7 @@ BuildRequires: zlib-devel
BuildRequires: gcc-toolset-12-gcc-plugin-annobin BuildRequires: gcc-toolset-12-gcc-plugin-annobin
%endif %endif
%endif %endif
BuildRequires: gcc-toolset-13
%if %{?use_openssl_for_librnp} %if %{?use_openssl_for_librnp}
BuildRequires: pkgconfig(openssl) BuildRequires: pkgconfig(openssl)
@ -889,7 +891,6 @@ Provides: bundled(crate(xpcom)) = 0.1.0
Provides: bundled(crate(xpcom_macros)) = 0.1.0 Provides: bundled(crate(xpcom_macros)) = 0.1.0
Provides: bundled(crate(zeitstempel)) = 0.1.1 Provides: bundled(crate(zeitstempel)) = 0.1.1
%description %description
Mozilla Thunderbird is a standalone mail and newsgroup client. Mozilla Thunderbird is a standalone mail and newsgroup client.
@ -906,6 +907,7 @@ echo "use_nodejs_scl %{?use_nodejs_scl}"
echo "use_llvm_ts %{?use_llvm_ts}" echo "use_llvm_ts %{?use_llvm_ts}"
echo "use_python3_scl %{?use_python3_scl}" echo "use_python3_scl %{?use_python3_scl}"
echo "--------------------------------------------" echo "--------------------------------------------"
clang -print-search-dirs
%setup -q %setup -q
@ -926,7 +928,8 @@ echo "--------------------------------------------"
%patch -P7 -p1 -b .build-rhel7-nasm-dwarf %patch -P7 -p1 -b .build-rhel7-nasm-dwarf
%endif %endif
%endif %endif
%patch -P8 -p1 -b .build-rnp-openssl # FIXME later
#%patch -P8 -p1 -b .build-rnp-openssl
%if !%{?use_openssl_for_librnp} %if !%{?use_openssl_for_librnp}
%patch -P9 -p1 -b .disable-openpgp-in-thunderbird %patch -P9 -p1 -b .disable-openpgp-in-thunderbird
%endif %endif
@ -935,7 +938,7 @@ echo "--------------------------------------------"
%patch -P51 -p1 -b .mozilla-bmo1170092 %patch -P51 -p1 -b .mozilla-bmo1170092
# -- Submitted upstream, not merged -- # -- Submitted upstream, not merged --
%patch -P101 -p1 -b .mozilla-bmo1670333 #TODO %patch -P101 -p1 -b .mozilla-bmo1670333
%patch -P102 -p1 -b .mozilla-bmo1504834-part1 %patch -P102 -p1 -b .mozilla-bmo1504834-part1
%patch -P103 -p1 -b .mozilla-bmo1504834-part3 %patch -P103 -p1 -b .mozilla-bmo1504834-part3
%patch -P104 -p1 -b .mozilla-bmo849632 %patch -P104 -p1 -b .mozilla-bmo849632
@ -954,9 +957,6 @@ echo "--------------------------------------------"
%endif %endif
# ---- Security patches ---- # ---- Security patches ----
cd media/libvpx/libvpx
%patch -P301 -p1 -b .CVE-2023-44488-libvpx
cd -
%{__rm} -f .mozconfig %{__rm} -f .mozconfig
%{__cp} %{SOURCE10} .mozconfig %{__cp} %{SOURCE10} .mozconfig
@ -1021,7 +1021,7 @@ echo "ac_add_options --with-google-safebrowsing-api-keyfile=`pwd`/google-api-key
# May result in empty --with-libclang-path= in earlier versions. # May result in empty --with-libclang-path= in earlier versions.
# So far this is needed only for c8s/c9s. # So far this is needed only for c8s/c9s.
%if (0%{?rhel} == 8 && %{rhel_minor_version} >= 10) || (0%{?rhel} == 9 && %{rhel_minor_version} >= 4) %if (0%{?rhel} == 8) || (0%{?rhel} == 9)
# Clang 17 upstream's detection fails, tell it where to look. # Clang 17 upstream's detection fails, tell it where to look.
echo "ac_add_options --with-libclang-path=`llvm-config --libdir`" >> .mozconfig echo "ac_add_options --with-libclang-path=`llvm-config --libdir`" >> .mozconfig
%endif %endif
@ -1120,6 +1120,7 @@ set +e
source scl_source enable gcc-toolset-12 source scl_source enable gcc-toolset-12
%endif %endif
%endif %endif
source scl_source enable gcc-toolset-13
%if 0%{?use_dts} %if 0%{?use_dts}
source scl_source enable devtoolset-%{dts_version} source scl_source enable devtoolset-%{dts_version}
%endif %endif
@ -1175,7 +1176,7 @@ cp %{SOURCE32} %{_buildrootdir}/bin || :
# Do not update config.guess in the ./third_party/rust because that would break checksums # Do not update config.guess in the ./third_party/rust because that would break checksums
find ./ -path ./third_party/rust -prune -o -name config.guess -exec cp /usr/lib/rpm/config.guess {} ';' find ./ -path ./third_party/rust -prune -o -name config.guess -exec cp /usr/lib/rpm/config.guess {} ';'
MOZ_OPT_FLAGS=$(echo "%{optflags}" | %{__sed} -e 's/-Wall//') MOZ_OPT_FLAGS=$(echo "%{optflags}" | %{__sed} -e 's/-Wall//' | %{__sed} -e 's/-fexceptions//' )
#rhbz#1037063 #rhbz#1037063
# -Werror=format-security causes build failures when -Wno-format is explicitly given # -Werror=format-security causes build failures when -Wno-format is explicitly given
# for some sources # for some sources
@ -1463,7 +1464,6 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
%ghost %{mozappdir}/components/compreg.dat %ghost %{mozappdir}/components/compreg.dat
%ghost %{mozappdir}/components/xpti.dat %ghost %{mozappdir}/components/xpti.dat
%{mozappdir}/omni.ja %{mozappdir}/omni.ja
%{mozappdir}/plugin-container
%{mozappdir}/defaults %{mozappdir}/defaults
%{mozappdir}/dictionaries %{mozappdir}/dictionaries
%if %{with langpacks} %if %{with langpacks}
@ -1486,9 +1486,6 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
%{_datadir}/icons/hicolor/64x64/apps/thunderbird.png %{_datadir}/icons/hicolor/64x64/apps/thunderbird.png
%{_datadir}/icons/hicolor/128x128/apps/thunderbird.png %{_datadir}/icons/hicolor/128x128/apps/thunderbird.png
%{_datadir}/icons/hicolor/symbolic/apps/thunderbird-symbolic.svg %{_datadir}/icons/hicolor/symbolic/apps/thunderbird-symbolic.svg
%if !%{?system_nss}
%{mozappdir}/*.chk
%endif
%{mozappdir}/dependentlibs.list %{mozappdir}/dependentlibs.list
%{mozappdir}/fonts %{mozappdir}/fonts
%{mozappdir}/pingsender %{mozappdir}/pingsender
@ -1514,6 +1511,9 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
#=============================================================================== #===============================================================================
%changelog %changelog
* Thu Jun 27 2024 Jan Horak <jhorak@redhat.com> - 128.0b4-1
- Update to 128.0b4
* Tue Jun 18 2024 Eike Rathke <erack@redhat.com> - 115.12.1-1 * Tue Jun 18 2024 Eike Rathke <erack@redhat.com> - 115.12.1-1
- Update to 115.12.1 build1 - Update to 115.12.1 build1