From c18da9ecd7d435684d91852885fc8668e2ba4baa Mon Sep 17 00:00:00 2001 From: eabdullin Date: Wed, 10 Dec 2025 14:48:11 +0000 Subject: [PATCH] Import from CS git --- .firefox.metadata | 4 +-- .gitignore | 4 +-- SOURCES/build-workaround-s390x.patch | 49 ++++++++++++++++++++++++++++ SOURCES/wasi.patch | 2 +- SPECS/firefox.spec | 25 ++++++++++---- 5 files changed, 72 insertions(+), 12 deletions(-) create mode 100644 SOURCES/build-workaround-s390x.patch diff --git a/.firefox.metadata b/.firefox.metadata index a25c671..29bccd0 100644 --- a/.firefox.metadata +++ b/.firefox.metadata @@ -1,6 +1,6 @@ bc4adac8f38f5103d8f88564a1545063dd8d6402 SOURCES/cbindgen-vendor.tar.xz -7744803db3f3ac6c101e3ebc1c9fdbcf6788f11e SOURCES/firefox-140.5.0esr.processed-source.tar.xz -f96430e7442d0b125d77598bcbac586340f63a77 SOURCES/firefox-langpacks-140.5.0esr-20251107.tar.xz +f87e9828496d77af5e879cfd4b493973e3fa2ca5 SOURCES/firefox-140.6.0esr.processed-source.tar.xz +2c0416681b196b1bf85720e01a30fcea6fbcb19f SOURCES/firefox-langpacks-140.6.0esr-20251202.tar.xz 2d8a6b2b30d5496735f49ffe8c8a7ede3a78a5ca SOURCES/mochitest-python.tar.gz 0d0ddbd2a73340b3cbc977997f57222946b1e775 SOURCES/nspr-4.36.0-2.el8_2.src.rpm fd3879b176634d66f8ef64d18fdaeec98e140c23 SOURCES/nss-3.112.0-1.el9_4.src.rpm diff --git a/.gitignore b/.gitignore index 6d42a13..8cd1606 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,6 @@ SOURCES/cbindgen-vendor.tar.xz -SOURCES/firefox-140.5.0esr.processed-source.tar.xz -SOURCES/firefox-langpacks-140.5.0esr-20251107.tar.xz +SOURCES/firefox-140.6.0esr.processed-source.tar.xz +SOURCES/firefox-langpacks-140.6.0esr-20251202.tar.xz SOURCES/mochitest-python.tar.gz SOURCES/nspr-4.36.0-2.el8_2.src.rpm SOURCES/nss-3.112.0-1.el9_4.src.rpm diff --git a/SOURCES/build-workaround-s390x.patch b/SOURCES/build-workaround-s390x.patch new file mode 100644 index 0000000..6e03f55 --- /dev/null +++ b/SOURCES/build-workaround-s390x.patch @@ -0,0 +1,49 @@ +From 13858b4787c24a40cdce819b963baebff186cfe0 Mon Sep 17 00:00:00 2001 +From: Paul Murphy +Date: Tue, 25 Nov 2025 08:55:25 -0600 +Subject: [PATCH] HACK: workaround s390x + +Attempt to workaround what seems to be a codegen related bug on s390x. + +This seems to avoid a crash related to Ident or Punct structures on +s390x. + +For: RHEL-118250 +--- + third_party/rust/proc-macro2/.cargo-checksum.json | 2 +- + third_party/rust/proc-macro2/src/lib.rs | 4 ++++ + 2 files changed, 5 insertions(+), 1 deletion(-) + +diff --git a/third_party/rust/proc-macro2/.cargo-checksum.json b/third_party/rust/proc-macro2/.cargo-checksum.json +index b0d735a3a2d6..c47ce4ac5611 100644 +--- a/third_party/rust/proc-macro2/.cargo-checksum.json ++++ b/third_party/rust/proc-macro2/.cargo-checksum.json +@@ -1 +1 @@ +-{"files":{"Cargo.toml":"41a9465146a2b62a642e29f065718649e686d3c9585736596392dd941c9b0bef","LICENSE-APACHE":"62c7a1e35f56406896d7aa7ca52d0cc0d272ac022b5d2796e7d6905db8a3636a","LICENSE-MIT":"23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3","README.md":"c609b6865476d6c35879784e9155367a97a0da496aa5c3c61488440a20f59883","build.rs":"cf78c0005f11d54ca42dbaee77cb76a440e6fa2e0b64798d3f74c04770a0ad2b","build/probe.rs":"971fd2178dc506ccdc5c2065c37b77696a4aee8e00330ca52625db4a857f68d3","rust-toolchain.toml":"6bbb61302978c736b2da03e4fb40e3beab908f85d533ab46fd541e637b5f3e0f","src/detection.rs":"ed9a5f9a979ab01247d7a68eeb1afa3c13209334c5bfff0f9289cb07e5bb4e8b","src/extra.rs":"29f094473279a29b71c3cc9f5fa27c2e2c30c670390cf7e4b7cf451486cc857e","src/fallback.rs":"be1ce5e32c88c29d41d2ab663375951817d52decce3dc9e335ec22378be8fa65","src/lib.rs":"97ca48f50ad15fbcef42b31fb4fbfb8e4a1c5f946d776aa44fd04b37d7c64b32","src/location.rs":"9225c5a55f03b56cce42bc55ceb509e8216a5e0b24c94aa1cd071b04e3d6c15f","src/marker.rs":"c11c5a1be8bdf18be3fcd224393f350a9aae7ce282e19ce583c84910c6903a8f","src/parse.rs":"4b77cddbc2752bc4d38a65acd8b96b6786c5220d19b1e1b37810257b5d24132d","src/rcvec.rs":"1c3c48c4f819927cc445ae15ca3bb06775feff2fd1cb21901ae4c40c7e6b4e82","src/wrapper.rs":"e41df9abc846b40f0cf01150d22b91944d07cde93bc72aa34798101652675844","tests/comments.rs":"31115b3a56c83d93eef2fb4c9566bf4543e302560732986161b98aef504785ed","tests/features.rs":"a86deb8644992a4eb64d9fd493eff16f9cf9c5cb6ade3a634ce0c990cf87d559","tests/marker.rs":"473e962ee1aa0633dd5cf9a973b3bbd0ef43b740d4b7f6d008ff455a6b89d386","tests/test.rs":"2e7106f582367d168638be7364d4e9aadbe0affca8b51dd80f0b3977cc2fcf83","tests/test_fmt.rs":"b7743b612af65f2c88cbe109d50a093db7aa7e87f9e37bf45b7bbaeb240aa020","tests/test_size.rs":"62d8373ea46b669b87bc90a9c49b6d02f90ff4c21f9a25acebf60c9926e01fb7"},"package":"5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77"} +\ No newline at end of file ++{"files":{},"package":"5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77"} +diff --git a/third_party/rust/proc-macro2/src/lib.rs b/third_party/rust/proc-macro2/src/lib.rs +index 1430306bb31d..81f8c15a67e4 100644 +--- a/third_party/rust/proc-macro2/src/lib.rs ++++ b/third_party/rust/proc-macro2/src/lib.rs +@@ -806,6 +806,8 @@ impl Debug for Group { + /// `Punct` with different forms of `Spacing` returned. + #[derive(Clone)] + pub struct Punct { ++ #[cfg(target_arch = "s390x")] ++ foo: u64, + ch: char, + spacing: Spacing, + span: Span, +@@ -834,6 +836,8 @@ impl Punct { + /// which can be further configured with the `set_span` method below. + pub fn new(ch: char, spacing: Spacing) -> Self { + Punct { ++ #[cfg(target_arch = "s390x")] ++ foo: 0xabcd, + ch, + spacing, + span: Span::call_site(), +-- +2.51.1 + diff --git a/SOURCES/wasi.patch b/SOURCES/wasi.patch index a52dc1d..9d9fd75 100644 --- a/SOURCES/wasi.patch +++ b/SOURCES/wasi.patch @@ -6,7 +6,7 @@ diff -up firefox-121.0.1/toolkit/moz.configure.wasi firefox-121.0.1/toolkit/moz. if wasi_sysroot: log.info("Using wasi sysroot in %s", wasi_sysroot) - return ["--sysroot=%s" % wasi_sysroot] -+ return ["--sysroot=%s" % wasi_sysroot, "-nodefaultlibs", "-lc", "-lwasi-emulated-process-clocks", "-lc++", "-lc++abi", "/home/jhorak/r/firefox/firefox-140.5.0-build/firefox-140.5.0/wasi-sdk-20/build/compiler-rt/lib/wasi/libclang_rt.builtins-wasm32.a"] ++ return ["--sysroot=%s" % wasi_sysroot, "-nodefaultlibs", "-lc", "-lwasi-emulated-process-clocks", "-lc++", "-lc++abi", "/home/jhorak/centpackages/NEW_ERA/firefox-2/firefox-140.6.0-build/firefox-140.6.0/wasi-sdk-20/build/compiler-rt/lib/wasi/libclang_rt.builtins-wasm32.a"] return [] set_config("WASI_SYSROOT", wasi_sysroot) diff --git a/SPECS/firefox.spec b/SPECS/firefox.spec index 842fdc0..ff508bc 100644 --- a/SPECS/firefox.spec +++ b/SPECS/firefox.spec @@ -143,7 +143,7 @@ end} %if 0%{?rhel} > 7 && 0%{?rhel} < 10 %global use_gcc_ts 1 - %if (0%{?rhel} == 9 && %{rhel_minor_version} >= 6) || (0%{?rhel} == 8 && %{rhel_minor_version} >= 10) + %if 0%{?rhel} == 9 && %{rhel_minor_version} >= 6 # clang depends on gcc-toolset-14-gcc-c++ %global gts_version 14 %else @@ -191,7 +191,7 @@ end} Summary: Mozilla Firefox Web browser Name: firefox -Version: 140.5.0 +Version: 140.6.0 Release: 1%{?dist} URL: https://www.mozilla.org/firefox/ License: MPLv1.1 or GPLv2+ or LGPLv2+ @@ -222,7 +222,7 @@ ExcludeArch: aarch64 s390 ppc # Link to original tarball: https://archive.mozilla.org/pub/firefox/releases/%%{version}%%{?pre_version}/source/firefox-%%{version}%%{?pre_version}.source.tar.xz Source0: firefox-%{version}%{?pre_version}%{?buildnum}.processed-source.tar.xz %if %{with langpacks} -Source1: firefox-langpacks-%{version}%{?pre_version}-20251107.tar.xz +Source1: firefox-langpacks-%{version}%{?pre_version}-20251202.tar.xz %endif Source2: cbindgen-vendor.tar.xz Source3: process-official-tarball @@ -270,6 +270,7 @@ Patch10: build-disable-gamepad.patch Patch11: rhbz-71999-fips-youtube.patch Patch13: firefox-fix-build-with-system-pipewire.patch Patch14: build-system-nss.patch +Patch15: build-workaround-s390x.patch # -- Upstreamed patches -- Patch51: mozilla-bmo1170092.patch @@ -521,9 +522,8 @@ BuildRequires: gcc-toolset-%{gts_version}-runtime BuildRequires: gcc-toolset-%{gts_version}-binutils BuildRequires: gcc-toolset-%{gts_version}-gcc BuildRequires: gcc-toolset-%{gts_version}-gcc-plugin-annobin -# Do not explicitly require gcc-toolset-%%{gts_version}-gcc-c++ instead fail +# Do not explicitly require gcc-toolset-%{gts_version}-gcc-g++ instead fail # when clang is upgraded to depend on a later toolset and adjust version. -# ERROR: The target C compiler is version 13.3.1, while the target C++ compiler is version 8.5.0. Need to use the same compiler version. %endif Requires: mozilla-filesystem @@ -1328,6 +1328,10 @@ echo "--------------------------------------------" %patch -P14 -p1 -b .system-nss %endif +%ifarch s390x +%patch -P15 -p1 -b .s390x_workaround +%endif + # We need to create the wasi.patch with the correct path to the wasm libclang_rt. %if %{with_wasi_sdk} export LIBCLANG_RT=`pwd`/wasi-sdk-20/build/compiler-rt/lib/wasi/libclang_rt.builtins-wasm32.a; cat %{SOURCE38} | envsubst > %{_sourcedir}/wasi.patch @@ -1686,6 +1690,7 @@ MOZ_LINK_FLAGS="-Wl,--no-keep-memory -Wl,--reduce-memory-overheads" # __global_ldflags that normally sets this. MOZ_LINK_FLAGS="$MOZ_LINK_FLAGS -L%{_libdir}" %endif + %ifarch %{ix86} s390x export RUSTFLAGS="-Cdebuginfo=0" echo 'export RUSTFLAGS="-Cdebuginfo=0"' >> .mozconfig @@ -1756,8 +1761,11 @@ cp %{SOURCE36} . export PATH=%{_buildrootdir}/%{bundled_install_path}/bin:$PATH echo $PKG_CONFIG_PATH %endif - -./mach build -v 2>&1 || exit 1 +%ifarch s390x + setarch s390x -R ./mach build -v 2>&1 || exit 1 +%else + ./mach build -v 2>&1 || exit 1 +%endif #--------------------------------------------------------------------- %install @@ -2128,6 +2136,9 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : #--------------------------------------------------------------------- %changelog +* Tue Dec 2 2025 Jan Horak - 140.6.0-1 +- Update to 140.6.0 ESR + * Fri Nov 7 2025 Jan Horak - 140.5.0-1 - Update to 140.5.0 ESR