update to 115.13.0

roll back to stable supported release (epoch bump) [release 115.13.0-1mamba;Sun Jul 28 2024]
This commit is contained in:
Silvan Calarco 2024-08-04 22:23:40 +02:00
parent e776fd0719
commit 20b64e8207
10 changed files with 3982 additions and 4041 deletions

View File

@ -1,17 +0,0 @@
Description: Remove an extra constant definition that is now being generated by newer versions of cbindgen (0.24), and causing build failures because it is defined in several places.
Author: Olivier Tilloy <olivier.tilloy@canonical.com>
Bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1773259
Forwarded: not-needed
--- a/gfx/webrender_bindings/webrender_ffi.h
+++ b/gfx/webrender_bindings/webrender_ffi.h
@@ -73,8 +73,6 @@ struct WrPipelineInfo;
struct WrPipelineIdAndEpoch;
using WrPipelineIdEpochs = nsTArray<WrPipelineIdAndEpoch>;
-const uint64_t ROOT_CLIP_CHAIN = ~0;
-
} // namespace wr
} // namespace mozilla

View File

@ -0,0 +1,57 @@
# HG changeset patch
# User Emilio Cobos Álvarez <emilio@crisal.io>
# Date 1705156533 0
# Node ID 9e96d1447f6c77f15bcd1c7fa432cefae4418038
# Parent 23a77d3c25d74ed46ebb77f47fda83c7b6dcdb45
Bug 1873379 - Ignore std::tuple harder. r=firefox-style-system-reviewers,zrhoffman
In libc++ 18 it seems to be in a nested namespace. Make sure to account
for that.
Differential Revision: https://phabricator.services.mozilla.com/D198398
diff --git a/layout/style/ServoBindings.toml b/layout/style/ServoBindings.toml
--- a/layout/style/ServoBindings.toml
+++ b/layout/style/ServoBindings.toml
@@ -361,16 +361,19 @@ allowlist-types = [
"NodeSelectorFlags",
]
opaque-types = [
"mozilla::StyleThinArc", # https://github.com/rust-lang/rust-bindgen/issues/1557
"std::pair__PCCP",
"std::namespace::atomic___base", "std::atomic__My_base",
"std::atomic",
"std::atomic___base",
+ "std::tuple.*", # Causes "Cannot find type _Pred in this scope" error on mac, like rust-skia#571
+ "std::.*::tuple.*",
+
# We want everything but FontVariation and Float to be opaque but we don't
# have negative regexes.
"mozilla::gfx::(.{0,4}|.{6,12}|.{14,}|([^F][^o][^n][^t][^V][^a][^r][^i][^a][^t][^i][^o][^n])|([^F][^l][^o][^a][^t]))",
"mozilla::dom::Sequence",
"mozilla::SmallPointerArray",
"mozilla::dom::Optional",
"mozilla::dom::OwningNodeOrString_Value",
"mozilla::dom::Nullable",
@@ -386,18 +389,16 @@ opaque-types = [
"mozilla::detail::PointerType",
"mozilla::HashSet",
"mozilla::Pair",
"mozilla::Pair_Base",
"mozilla::ScrollAxis", # <- For some reason the alignment of this is 4
# for clang.
"mozilla::SeenPtrs",
"mozilla::SupportsWeakPtr",
- "std::tuple",
- "std::tuple_.*", # Causes "Cannot find type _Pred in this scope" error on mac, like rust-skia#571
"SupportsWeakPtr",
"mozilla::detail::WeakReference",
"mozilla::WeakPtr",
"nsWritingIterator_reference", "nsReadingIterator_reference",
"nsTObserverArray", # <- Inherits from nsAutoTObserverArray<T, 0>
"mozilla::DoublyLinkedList",
"mozilla::SafeDoublyLinkedList",
"nsTHashtable", # <- Inheriting from inner typedefs that clang

View File

@ -0,0 +1,108 @@
# HG changeset patch
# User Mike Hommey <mh+mozilla@glandium.org>
# Date 1688610847 0
# Node ID c4d6ad7c5e4422f2d6de27f92bf53a776371b325
# Parent ce5753685c87f3fbdaaee65c62d7ff1bd0f11637
Bug 1841919 - Fix "variable does not need to be mutable" warnings in webrender. r=gfx-reviewers,lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D182851
diff --git a/gfx/wr/webrender/src/compositor/sw_compositor.rs b/gfx/wr/webrender/src/compositor/sw_compositor.rs
--- a/gfx/wr/webrender/src/compositor/sw_compositor.rs
+++ b/gfx/wr/webrender/src/compositor/sw_compositor.rs
@@ -1021,17 +1021,17 @@ impl SwCompositor {
}
}
/// Lock a surface with an attached external image for compositing.
fn try_lock_composite_surface(&mut self, device: &mut Device, id: &NativeSurfaceId) {
if let Some(surface) = self.surfaces.get_mut(id) {
if let Some(external_image) = surface.external_image {
assert!(!surface.tiles.is_empty());
- let mut tile = &mut surface.tiles[0];
+ let tile = &mut surface.tiles[0];
if let Some(info) = self.composite_surfaces.get(&external_image) {
tile.valid_rect = DeviceIntRect::from_size(info.size);
return;
}
// If the surface has an attached external image, attempt to lock the external image
// for compositing. Yields a descriptor of textures and data necessary for their
// interpretation on success.
let mut info = SWGLCompositeSurfaceInfo {
diff --git a/gfx/wr/webrender/src/picture.rs b/gfx/wr/webrender/src/picture.rs
--- a/gfx/wr/webrender/src/picture.rs
+++ b/gfx/wr/webrender/src/picture.rs
@@ -2883,17 +2883,17 @@ impl TileCacheInstance {
surfaces: &mut [SurfaceInfo],
) {
// This primitive exists on the last element on the current surface stack.
profile_scope!("update_prim_dependencies");
let prim_surface_index = surface_stack.last().unwrap().1;
let prim_clip_chain = &prim_instance.vis.clip_chain;
// Accumulate the exact (clipped) local rect in to the parent surface
- let mut surface = &mut surfaces[prim_surface_index.0];
+ let surface = &mut surfaces[prim_surface_index.0];
surface.clipped_local_rect = surface.clipped_local_rect.union(&prim_clip_chain.pic_coverage_rect);
// If the primitive is directly drawn onto this picture cache surface, then
// the pic_coverage_rect is in the same space. If not, we need to map it from
// the surface space into the picture cache space.
let on_picture_surface = prim_surface_index == self.surface_index;
let pic_coverage_rect = if on_picture_surface {
prim_clip_chain.pic_coverage_rect
diff --git a/gfx/wr/webrender_api/src/display_item_cache.rs b/gfx/wr/webrender_api/src/display_item_cache.rs
--- a/gfx/wr/webrender_api/src/display_item_cache.rs
+++ b/gfx/wr/webrender_api/src/display_item_cache.rs
@@ -53,23 +53,23 @@ struct CacheEntry {
#[derive(Clone, Deserialize, MallocSizeOf, Serialize)]
pub struct DisplayItemCache {
entries: Vec<CacheEntry>,
}
impl DisplayItemCache {
fn add_item(&mut self, key: ItemKey, item: CachedDisplayItem) {
- let mut entry = &mut self.entries[key as usize];
+ let entry = &mut self.entries[key as usize];
entry.items.push(item);
entry.occupied = true;
}
fn clear_entry(&mut self, key: ItemKey) {
- let mut entry = &mut self.entries[key as usize];
+ let entry = &mut self.entries[key as usize];
entry.items.clear();
entry.occupied = false;
}
fn grow_if_needed(&mut self, capacity: usize) {
if capacity > self.entries.len() {
self.entries.resize_with(capacity, || CacheEntry {
items: Vec::new(),
diff --git a/gfx/wr/wrench/src/reftest.rs b/gfx/wr/wrench/src/reftest.rs
--- a/gfx/wr/wrench/src/reftest.rs
+++ b/gfx/wr/wrench/src/reftest.rs
@@ -509,17 +509,17 @@ impl ReftestManifest {
// only a single (or no) 'fuzzy' keyword means we use the max
// of that fuzzy and options.allow_.. (we don't want that to
// turn into a test that allows fuzzy.allow_ *plus* options.allow_):
match fuzziness.len() {
0 => fuzziness.push(RefTestFuzzy {
max_difference: options.allow_max_difference,
num_differences: options.allow_num_differences }),
1 => {
- let mut fuzzy = &mut fuzziness[0];
+ let fuzzy = &mut fuzziness[0];
fuzzy.max_difference = cmp::max(fuzzy.max_difference, options.allow_max_difference);
fuzzy.num_differences = cmp::max(fuzzy.num_differences, options.allow_num_differences);
},
_ => {
// ignore options, use multiple fuzzy keywords instead. make sure
// the list is sorted to speed up counting violations.
fuzziness.sort_by(|a, b| a.max_difference.cmp(&b.max_difference));
for pair in fuzziness.windows(2) {

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,199 @@
From cd10f3ba0d83f34ca978cc4c7a552b72fdd068aa Mon Sep 17 00:00:00 2001
From: David Tolnay <dtolnay@gmail.com>
Date: Tue, 28 Nov 2023 11:18:39 -0800
Subject: [PATCH 1/2] Flatten cursor.kind() matching in Item::parse down to one
match
---
third_party/rust/bindgen/ir/item.rs | 84 ++++++++++++++++++++++------------------------
1 file changed, 41 insertions(+), 43 deletions(-)
diff --git a/third_party/rust/bindgen/ir/item.rs b/third_party/rust/bindgen/ir/item.rs
index 0556452bfa..4f2d361e51 100644
--- a/third_party/rust/bindgen/ir/item.rs
+++ b/third_party/rust/bindgen/ir/item.rs
@@ -1427,53 +1427,52 @@
}
}
- // Guess how does clang treat extern "C" blocks?
- if cursor.kind() == CXCursor_UnexposedDecl {
- Err(ParseError::Recurse)
- } else {
+ match cursor.kind() {
+ // Guess how does clang treat extern "C" blocks?
+ CXCursor_UnexposedDecl => Err(ParseError::Recurse),
+
// We allowlist cursors here known to be unhandled, to prevent being
// too noisy about this.
- match cursor.kind() {
- CXCursor_MacroDefinition |
- CXCursor_MacroExpansion |
- CXCursor_UsingDeclaration |
- CXCursor_UsingDirective |
- CXCursor_StaticAssert |
- CXCursor_FunctionTemplate => {
- debug!(
- "Unhandled cursor kind {:?}: {:?}",
- cursor.kind(),
- cursor
- );
- }
- CXCursor_InclusionDirective => {
- let file = cursor.get_included_file_name();
- match file {
- None => {
- warn!(
- "Inclusion of a nameless file in {:?}",
- cursor
- );
- }
- Some(filename) => {
- ctx.include_file(filename);
- }
- }
- }
- _ => {
- // ignore toplevel operator overloads
- let spelling = cursor.spelling();
- if !spelling.starts_with("operator") {
+ CXCursor_MacroDefinition |
+ CXCursor_MacroExpansion |
+ CXCursor_UsingDeclaration |
+ CXCursor_UsingDirective |
+ CXCursor_StaticAssert |
+ CXCursor_FunctionTemplate => {
+ debug!(
+ "Unhandled cursor kind {:?}: {:?}",
+ cursor.kind(),
+ cursor
+ );
+ Err(ParseError::Continue)
+ }
+ CXCursor_InclusionDirective => {
+ let file = cursor.get_included_file_name();
+ match file {
+ None => {
warn!(
- "Unhandled cursor kind {:?}: {:?}",
- cursor.kind(),
+ "Inclusion of a nameless file in {:?}",
cursor
);
}
+ Some(filename) => {
+ ctx.include_file(filename);
+ }
}
+ Err(ParseError::Continue)
+ }
+ _ => {
+ // ignore toplevel operator overloads
+ let spelling = cursor.spelling();
+ if !spelling.starts_with("operator") {
+ warn!(
+ "Unhandled cursor kind {:?}: {:?}",
+ cursor.kind(),
+ cursor
+ );
+ }
+ Err(ParseError::Continue)
}
-
- Err(ParseError::Continue)
}
}
From 2997017b5a3065b83e9d76f0080d6cb99c94c0c1 Mon Sep 17 00:00:00 2001
From: David Tolnay <dtolnay@gmail.com>
Date: Tue, 28 Nov 2023 11:21:18 -0800
Subject: [PATCH 2/2] Handle CXCursor_LinkageSpec in Clang 18+
---
third_party/rust/bindgen/ir/item.rs | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/third_party/rust/bindgen/ir/item.rs b/third_party/rust/bindgen/ir/item.rs
index 4f2d361e51..dd587b088b 100644
--- a/third_party/rust/bindgen/ir/item.rs
+++ b/third_party/rust/bindgen/ir/item.rs
@@ -1433,8 +1433,11 @@ impl Item {
}
match cursor.kind() {
- // Guess how does clang treat extern "C" blocks?
- CXCursor_UnexposedDecl => Err(ParseError::Recurse),
+ // On Clang 18+, extern "C" is reported accurately as a LinkageSpec.
+ // Older LLVM treat it as UnexposedDecl.
+ CXCursor_LinkageSpec | CXCursor_UnexposedDecl => {
+ Err(ParseError::Recurse)
+ }
// We allowlist cursors here known to be unhandled, to prevent being
// too noisy about this.
diff --git a/dom/media/gmp-plugin-openh264/gmp-fake-openh264.cpp b/dom/media/gmp-plugin-openh264/gmp-fake-openh264.cpp
--- a/dom/media/gmp-plugin-openh264/gmp-fake-openh264.cpp
+++ b/dom/media/gmp-plugin-openh264/gmp-fake-openh264.cpp
@@ -97,11 +97,11 @@
uint32_t width_;
uint32_t height_;
uint8_t y_;
uint8_t u_;
uint8_t v_;
- uint32_t timestamp_;
+ uint64_t timestamp_;
} idr_nalu;
};
#pragma pack(pop)
#define ENCODED_FRAME_MAGIC 0x004000b8
diff --git a/dom/media/gtest/TestGMPRemoveAndDelete.cpp b/dom/media/gtest/TestGMPRemoveAndDelete.cpp
--- a/dom/media/gtest/TestGMPRemoveAndDelete.cpp
+++ b/dom/media/gtest/TestGMPRemoveAndDelete.cpp
@@ -359,11 +359,11 @@
uint32_t width_;
uint32_t height_;
uint8_t y_;
uint8_t u_;
uint8_t v_;
- uint32_t timestamp_;
+ uint64_t timestamp_;
} idr_nalu;
};
#pragma pack(pop)
GMPVideoFrame* absFrame;
diff --git a/dom/media/webrtc/libwebrtcglue/WebrtcGmpVideoCodec.h b/dom/media/webrtc/libwebrtcglue/WebrtcGmpVideoCodec.h
--- a/dom/media/webrtc/libwebrtcglue/WebrtcGmpVideoCodec.h
+++ b/dom/media/webrtc/libwebrtcglue/WebrtcGmpVideoCodec.h
@@ -300,11 +300,11 @@
struct InputImageData {
int64_t timestamp_us;
};
// Map rtp time -> input image data
- DataMutex<std::map<uint32_t, InputImageData>> mInputImageMap;
+ DataMutex<std::map<uint64_t, InputImageData>> mInputImageMap;
MediaEventProducer<uint64_t> mInitPluginEvent;
MediaEventProducer<uint64_t> mReleasePluginEvent;
};
diff --git a/dom/media/webrtc/libwebrtcglue/WebrtcGmpVideoCodec.cpp b/dom/media/webrtc/libwebrtcglue/WebrtcGmpVideoCodec.cpp
--- a/dom/media/webrtc/libwebrtcglue/WebrtcGmpVideoCodec.cpp
+++ b/dom/media/webrtc/libwebrtcglue/WebrtcGmpVideoCodec.cpp
@@ -538,11 +538,11 @@
return;
}
webrtc::VideoFrameType ft;
GmpFrameTypeToWebrtcFrameType(aEncodedFrame->FrameType(), &ft);
- uint32_t timestamp = (aEncodedFrame->TimeStamp() * 90ll + 999) / 1000;
+ uint64_t timestamp = (aEncodedFrame->TimeStamp() * 90ll + 999) / 1000;
GMP_LOG_DEBUG("GMP Encoded: %" PRIu64 ", type %d, len %d",
aEncodedFrame->TimeStamp(), aEncodedFrame->BufferType(),
aEncodedFrame->Size());

View File

@ -1,25 +0,0 @@
From 9855927c896eaeecb21c1541942ee6d557144183 Mon Sep 17 00:00:00 2001
From: anthraxx <levente@leventepolyak.net>
Date: Sun, 8 Nov 2020 13:26:47 +0100
Subject: [PATCH] configure: fix passing system bzip2 ldflags
---
comm/third_party/openpgp.configure | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/comm/third_party/openpgp.configure b/comm/third_party/openpgp.configure
index 2f9c796..2cbc907 100644
--- a/comm/third_party/openpgp.configure
+++ b/comm/third_party/openpgp.configure
@@ -80,7 +80,7 @@ with only_when('--enable-compile-environment'):
if bzip2_pkg:
cflags = list(bzip2_pkg.cflags)
libs = bzip2_pkg.libs
- return namespace(cflags=cflags, libs=libs, path=(value[0]), )
+ return namespace(cflags=cflags, ldflags=libs, )
# Fallback
return namespace(
ldflags=['-lbz2'],
--
2.28.0

File diff suppressed because one or more lines are too long

View File

@ -1,10 +0,0 @@
--- thunderbird-91.4.1/mach.orig 2021-12-23 10:55:38.758897708 +0100
+++ thunderbird-91.4.1/mach 2021-12-23 10:55:46.712045948 +0100
@@ -124,6 +124,7 @@
import os
import sys
+import setuptools
def load_mach(dir_path, mach_path):
if sys.version_info < (3, 5):

View File

@ -1,28 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Kevin Daudt <kdaudt@alpinelinux.org>
Date: Sun, 12 Dec 2021 13:38:48 +0000
Subject: [PATCH] Bug 1745560 - Add missing stub for wl_proxy_marshal_flags,
r=stransky
Firefox fails to build against wayland 1.20 because this symbol is missing
Differential Revision: https://phabricator.services.mozilla.com/D133583
---
widget/gtk/mozwayland/mozwayland.c | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/widget/gtk/mozwayland/mozwayland.c b/widget/gtk/mozwayland/mozwayland.c
index 7a448e6321e2..1a86468b4f3d 100644
--- a/widget/gtk/mozwayland/mozwayland.c
+++ b/widget/gtk/mozwayland/mozwayland.c
@@ -200,3 +200,10 @@ MOZ_EXPORT int wl_list_empty(const struct wl_list* list) { return -1; }
MOZ_EXPORT void wl_list_insert_list(struct wl_list* list,
struct wl_list* other) {}
+
+MOZ_EXPORT struct wl_proxy* wl_proxy_marshal_flags(
+ struct wl_proxy* proxy, uint32_t opcode,
+ const struct wl_interface* interface, uint32_t version, uint32_t flags,
+ ...) {
+ return NULL;
+}

View File

@ -8,7 +8,8 @@
#%define source_dir comm-esr%(echo %version | cut -d. -f1) #%define source_dir comm-esr%(echo %version | cut -d. -f1)
Name: thunderbird Name: thunderbird
Version: 127.0 Epoch: 1
Version: 115.13.0
Release: 1mamba Release: 1mamba
Summary: Mozilla Thunderbird email, RSS, and newsgroup client Summary: Mozilla Thunderbird email, RSS, and newsgroup client
Group: Graphical Desktop/Applications/Internet Group: Graphical Desktop/Applications/Internet
@ -23,15 +24,14 @@ Source3: mozilla-thunderbird128x128.png
Source4: thunderbird-script Source4: thunderbird-script
Source5: thunderbird-autoupdate Source5: thunderbird-autoupdate
Source6: thunderbird-distribution.ini Source6: thunderbird-distribution.ini
Patch14: thunderbird-78.8.1-rust-1.48.patch Patch0: thunderbird-115.5.0-icu-74.1.patch
Patch15: thunderbird-78.8.1-fix-passing-system-bzip2-ldflags.patch Patch1: thunderbird-115.13.0-fix-libc++-18-ignore-tuple-harder.patch
Patch16: thunderbird-91.4.1-python-setuptools-60.0.4.patch Patch2: thunderbird-115.13.0-llvm-18-variable-does-not-need-to-be-mutable.patch
Patch17: thunderbird-91.5.1-libwayland-1.20.0.patch Patch3: thunderbird-115.13.0-rustc-18-1.patch
Patch18: thunderbird-102.3.2-cbindgen-0.24.patch Patch4: thunderbird-115.13.0-rustc-18-2.patch
Patch19: thunderbird-115.5.0-icu-74.1.patch
License: GPL,MPL 1.1,LGPL License: GPL,MPL 1.1,LGPL
## AUTOBUILDREQ-BEGIN ## AUTOBUILDREQ-BEGIN
BuildRequires: xulrunner-devel BuildRequires: firefox-devel
BuildRequires: glibc-devel BuildRequires: glibc-devel
BuildRequires: libX11-devel BuildRequires: libX11-devel
BuildRequires: libXcomposite-devel BuildRequires: libXcomposite-devel
@ -42,12 +42,14 @@ BuildRequires: libXfixes-devel
BuildRequires: libXi-devel BuildRequires: libXi-devel
BuildRequires: libXrandr-devel BuildRequires: libXrandr-devel
BuildRequires: libXrender-devel BuildRequires: libXrender-devel
BuildRequires: libXtst-devel
BuildRequires: libalsa-devel BuildRequires: libalsa-devel
BuildRequires: libat-spi2-core-devel BuildRequires: libat-spi2-core-devel
BuildRequires: libbotan2-devel BuildRequires: libbotan2-devel
BuildRequires: libbzip2-devel BuildRequires: libbzip2-devel
BuildRequires: libcairo-devel BuildRequires: libcairo-devel
BuildRequires: libdbus-devel BuildRequires: libdbus-devel
BuildRequires: libdbus-glib-devel
BuildRequires: libevent-devel BuildRequires: libevent-devel
BuildRequires: libffi-devel BuildRequires: libffi-devel
BuildRequires: libfontconfig-devel BuildRequires: libfontconfig-devel
@ -58,7 +60,6 @@ BuildRequires: libglib-devel
BuildRequires: libgtk3-devel BuildRequires: libgtk3-devel
BuildRequires: libharfbuzz-devel BuildRequires: libharfbuzz-devel
BuildRequires: libicu-devel BuildRequires: libicu-devel
BuildRequires: libjson-c-devel
BuildRequires: libnspr-devel BuildRequires: libnspr-devel
BuildRequires: libnss-devel BuildRequires: libnss-devel
BuildRequires: libpango-devel BuildRequires: libpango-devel
@ -85,7 +86,6 @@ BuildRequires: libxcb-util-devel
BuildRequires: libXft-devel BuildRequires: libXft-devel
BuildRequires: libXinerama-devel BuildRequires: libXinerama-devel
BuildRequires: libxml2-devel BuildRequires: libxml2-devel
#BuildRequires: perl-Gtk2
BuildRequires: pkgconfig BuildRequires: pkgconfig
BuildRequires: unzip BuildRequires: unzip
BuildRequires: xorg-proto-devel BuildRequires: xorg-proto-devel
@ -204,8 +204,9 @@ This package contains the %{2} language support files for Thunderbird.\
#% debug_package #% debug_package
%prep %prep
%setup -q -D -T %setup -q
:<< ___EOF #-D -T
#:<< ___EOF
# Don't clean build at the end # Don't clean build at the end
#% global __spec_rmbuild_cmd /bin/true #% global __spec_rmbuild_cmd /bin/true
@ -213,9 +214,12 @@ This package contains the %{2} language support files for Thunderbird.\
%global __provides_exclude_from ^%{_libdir}/thunderbird/.*$ %global __provides_exclude_from ^%{_libdir}/thunderbird/.*$
%global __requires_exclude ^(libxul\\.so.*|libldap.*\\.so.*|libldif.*\\.so.*|libmoz.*\\.so.*|libprldap.*\\.so.*|librnp\\.so.*)$ %global __requires_exclude ^(libxul\\.so.*|libldap.*\\.so.*|libldif.*\\.so.*|libmoz.*\\.so.*|libprldap.*\\.so.*|librnp\\.so.*)$
#%patch16 -p1 %define _default_patch_fuzz 2
#%patch18 -p1 -b .cbindgen-0.24 %patch 0 -p1 -b .icu-74.1
%patch 19 -p1 -b .icu-74.1 %patch 1 -p1 -b .fix-libc++-18-ignore-tuple-harder
%patch 2 -p1 -b .llvm-18-variable-does-not-need-to-be-mutable
%patch 3 -p1 -b .rustc-18-1
%patch 4 -p1 -b .rustc-18-2
rm -f .mozconfig rm -f .mozconfig
cat << EOF > .mozconfig cat << EOF > .mozconfig
@ -229,10 +233,10 @@ ac_add_options --enable-hardening
ac_add_options --enable-optimize ac_add_options --enable-optimize
# https://bugzilla.mozilla.org/show_bug.cgi?id=1521249 # https://bugzilla.mozilla.org/show_bug.cgi?id=1521249
ac_add_options --enable-rust-simd ac_add_options --enable-rust-simd
## https://bugzilla.mozilla.org/show_bug.cgi?id=1423822 # https://bugzilla.mozilla.org/show_bug.cgi?id=1423822
#%ifarch %{ix86} x86_64 %ifarch %{ix86} x86_64
#ac_add_options --disable-elf-hack ac_add_options --disable-elf-hack
#%endif %endif
# Branding # Branding
ac_add_options --enable-official-branding ac_add_options --enable-official-branding
@ -244,7 +248,6 @@ ac_add_options --with-system-zlib
ac_add_options --with-system-bz2 ac_add_options --with-system-bz2
ac_add_options --with-system-icu ac_add_options --with-system-icu
ac_add_options --with-system-jpeg ac_add_options --with-system-jpeg
ac_add_options --with-system-jsonc
# does not have APNG support # does not have APNG support
#ac_add_options --with-system-png #ac_add_options --with-system-png
ac_add_options --with-system-libvpx ac_add_options --with-system-libvpx
@ -260,9 +263,12 @@ ac_add_options --without-wasm-sandboxed-libraries
# Features # Features
ac_add_options --enable-alsa ac_add_options --enable-alsa
#ac_add_options --enable-openpgp
#ac_add_options --enable-calendar
ac_add_options --disable-jack ac_add_options --disable-jack
ac_add_options --disable-crashreporter ac_add_options --disable-crashreporter
ac_add_options --disable-updater ac_add_options --disable-updater
#ac_add_options --disable-tests
%ifarch %{ix86} %ifarch %{ix86}
ac_add_options --disable-debug-symbols ac_add_options --disable-debug-symbols
%endif %endif
@ -272,6 +278,13 @@ ac_add_options --with-unsigned-addon-scopes=app,system
ac_add_options --allow-addon-sideload ac_add_options --allow-addon-sideload
EOF EOF
# Fix build with rust:
# error: the listed checksum of `third_party/rust/bindgen/ir/item.rs` has changed:
sed -e 's|73114a5c28472e77082ad259113ffafb418ed602c1741f26da3e10278b0bf93e|a88d6cc10ec1322b53a8f4c782b5133135ace0fdfcf03d1624b768788e17be0f|' \
-i third_party/rust/mp4parse/.cargo-checksum.json
sed -e 's|880c982df0843cbdff38b9f9c3829a2d863a224e4de2260c41c3ac69e9148ad4|239b3e4d20498f69ed5f94481ed932340bd58cb485b26c35b09517f249d20d11|' \
-i third_party/rust/bindgen/.cargo-checksum.json
#%if %enable_debug_info #%if %enable_debug_info
#echo "export CFLAGS="-gstabs+"" >> .mozconfig #echo "export CFLAGS="-gstabs+"" >> .mozconfig
#echo "export CXXFLAGS="-gstabs+"" >> .mozconfig #echo "export CXXFLAGS="-gstabs+"" >> .mozconfig
@ -288,7 +301,7 @@ export PYTHON=%{__python3}
export CXXFLAGS="$(echo | gcc -Wp,-v -x c++ - -fsyntax-only 2>&1| grep "^ %{_libdir}"|grep "c++"|while read line; do echo -n "-I$line "; done)" export CXXFLAGS="$(echo | gcc -Wp,-v -x c++ - -fsyntax-only 2>&1| grep "^ %{_libdir}"|grep "c++"|while read line; do echo -n "-I$line "; done)"
%ifarch aarch64 %{ix86} %ifarch aarch64 %{ix86}
export LDFLAGS="-Wl,--no-keep-memory" export LDFLAGS="-Wl,--no-keep-memory -Wl,--reduce-memory-overheads"
export RUSTFLAGS="-Cdebuginfo=0" export RUSTFLAGS="-Cdebuginfo=0"
%endif %endif
@ -425,6 +438,10 @@ fi
%exclude %{_libdir}/thunderbird/distribution/extensions/langpack-*@thunderbird.mozilla.org.xpi %exclude %{_libdir}/thunderbird/distribution/extensions/langpack-*@thunderbird.mozilla.org.xpi
%changelog %changelog
* Sun Jul 28 2024 Silvan Calarco <silvan.calarco@mambasoft.it> 115.13.0-1mamba
- update to 115.13.0
- roll back to stable supported release (epoch bump)
* Thu Jun 13 2024 Automatic Build System <autodist@openmamba.org> 127.0-1mamba * Thu Jun 13 2024 Automatic Build System <autodist@openmamba.org> 127.0-1mamba
- automatic version update by autodist - automatic version update by autodist