From f346b8f3873777bd979c3199bd024c3794c9d055 Mon Sep 17 00:00:00 2001 From: Jan Horak Date: Wed, 2 Oct 2024 11:09:33 +0200 Subject: [PATCH] Update to 128.3.0 esr Resolves: RHEL-59952 --- .gitignore | 38 +- CVE-2023-44488-libvpx.patch | 127 ------ bindgen-clang18.patch | 105 ----- build-disable-elfhack.patch | 24 +- build-disable-gamepad.patch | 12 + build-ffvpx.patch | 24 + build-libaom.patch | 20 + disable-pipewire.patch | 516 ++++++++++++---------- distribution.ini | 10 +- fedora-shebang-build.patch | 9 - firefox-enable-addons.patch | 10 +- firefox-mozconfig | 4 +- firefox-redhat-default-prefs.js | 4 + firefox-tests-xpcshell-freeze.patch | 14 - firefox.sh.in | 34 +- firefox.spec | 630 ++++++++++++++++----------- gen_cbindgen-vendor.sh | 2 +- mozilla-bmo1504834-part1.patch | 22 +- mozilla-bmo1636168-fscreen.patch | 54 +-- mozilla-bmo1670333.patch | 41 +- mozilla-bmo1789216-disable-av1.patch | 64 +-- nss-setup-flags-env.inc | 2 +- process-official-tarball | 5 + process-official-tarball-firefox | 28 ++ sources | 10 +- 25 files changed, 862 insertions(+), 947 deletions(-) delete mode 100644 CVE-2023-44488-libvpx.patch delete mode 100644 bindgen-clang18.patch create mode 100644 build-disable-gamepad.patch create mode 100644 build-ffvpx.patch create mode 100644 build-libaom.patch delete mode 100644 fedora-shebang-build.patch delete mode 100644 firefox-tests-xpcshell-freeze.patch create mode 100755 process-official-tarball-firefox diff --git a/.gitignore b/.gitignore index 750db80..66fd301 100644 --- a/.gitignore +++ b/.gitignore @@ -334,17 +334,27 @@ /firefox-langpacks-115.9.1esr-20240322.tar.xz /firefox-115.10.0esr.processed-source.tar.xz /firefox-langpacks-115.10.0esr-20240409.tar.xz -/firefox-115.11.0esr.processed-source.tar.xz -/firefox-langpacks-115.11.0esr-20240507.tar.xz -/firefox-115.12.0esr.processed-source.tar.xz -/firefox-langpacks-115.12.0esr-20240604.tar.xz -/firefox-115.13.0esr.processed-source.tar.xz -/firefox-langpacks-115.13.0esr-20240701.tar.xz -/firefox-115.13.0esr.b2.processed-source.tar.xz -/firefox-langpacks-115.13.0esr-20240702.tar.xz -/firefox-115.13.0esr.b3.processed-source.tar.xz -/firefox-langpacks-115.13.0esr-20240708.tar.xz -/firefox-115.14.0esr.processed-source.tar.xz -/firefox-langpacks-115.14.0esr-20240730.tar.xz -/firefox-115.14.0esr.b2.processed-source.tar.xz -/firefox-langpacks-115.14.0esr-20240801.tar.xz +/firefox-128.0b2.source.tar.xz +/firefox-langpacks-128.0b2-20240613.tar.xz +/firefox-128.0b2.processed-source.tar.xz +/firefox-128.0b5.processed-source.tar.xz +/firefox-langpacks-128.0b5-20240620.tar.xz +/firefox-128.0esr.processed-source.tar.xz +/firefox-langpacks-128.0esr-20240709.tar.xz +/nss-3.101.0-6.el8_8.src.rpm +/nss-3.101.0-6.el9_2.src.rpm +/nss-3.101.0-6.fc40.src.rpm +/firefox-128.1.0esr.processed-source.tar.xz +/firefox-langpacks-128.1.0esr-20240820.tar.xz +/nss-3.101.0-6.el9_0.src.rpm +/firefox-128.1esr.processed-source.tar.xz +/firefox-langpacks-128.1esr-20240820.tar.xz +/firefox-128.1.0esr.source.tar.xz +/firefox-128.2.0esr.processed-source.tar.xz +/firefox-langpacks-128.2.0esr-20240827.tar.xz +/nss-3.101.0-6.el8_0.src.rpm +/nss-3.101.0-6.el8_2.src.rpm +/firefox-128.3.0esr.processed-source.tar.xz +/firefox-langpacks-128.3.0esr-20240924.tar.xz +/nss-3.101.0-7.el9_2.src.rpm +/nss-3.101.0-7.el8_2.src.rpm diff --git a/CVE-2023-44488-libvpx.patch b/CVE-2023-44488-libvpx.patch deleted file mode 100644 index 79e5235..0000000 --- a/CVE-2023-44488-libvpx.patch +++ /dev/null @@ -1,127 +0,0 @@ -From 263682c9a29395055f3b3afe2d97be1828a6223f Mon Sep 17 00:00:00 2001 -From: Jerome Jiang -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; diff --git a/bindgen-clang18.patch b/bindgen-clang18.patch deleted file mode 100644 index faa783a..0000000 --- a/bindgen-clang18.patch +++ /dev/null @@ -1,105 +0,0 @@ -diff -up thunderbird-115.13.0/third_party/rust/bindgen/.cargo-checksum.json.bindgen-clang18 thunderbird-115.13.0/third_party/rust/bindgen/.cargo-checksum.json ---- thunderbird-115.13.0/third_party/rust/bindgen/.cargo-checksum.json.bindgen-clang18 2024-07-15 10:44:05.862917093 +0200 -+++ thunderbird-115.13.0/third_party/rust/bindgen/.cargo-checksum.json 2024-07-15 10:44:27.756985290 +0200 -@@ -1 +1 @@ --{"files":{"Cargo.toml":"ae6de5b309f8bf07c259436b1113ccf405b2d7dd862e1b289bfef47a550956d1","LICENSE":"c23953d9deb0a3312dbeaf6c128a657f3591acee45067612fa68405eaa4525db","build.rs":"4a9c4ac3759572e17de312a9d3f4ced3b6fd3c71811729e5a8d06bfbd1ac8f82","callbacks.rs":"9cbda648159897f93a07dbe90a1ee9ba92e2b020a02bc9725b87db4d025df3b6","clang.rs":"a38d153516c6685b46723010793b2f4e8b16468f3cd3296781dea6e485cd66da","codegen/bitfield_unit.rs":"fddeaeab5859f4e82081865595b7705f5c0774d997df95fa5c655b81b9cae125","codegen/bitfield_unit_tests.rs":"9df86490de5e9d66ccea583dcb686dd440375dc1a3c3cf89a89d5de3883bf28a","codegen/dyngen.rs":"7d727a737c616f7f2d3a07d825be8baad9078b3f35ad96277904559b4534ffcc","codegen/error.rs":"5e308b8c54b68511fc8ea2ad15ddac510172c4ff460a80a265336440b0c9653d","codegen/helpers.rs":"5f24007a09e50db7bd2b49b07100cfed649c7b22232558e28c99c759d5d14152","codegen/impl_debug.rs":"71d8e28873ba2de466f2637a824746963702f0511728037d72ee5670c51194cb","codegen/impl_partialeq.rs":"f4599e32c66179ae515a6518a3e94b686689cf59f7dd9ab618c3fb69f17d2c77","codegen/mod.rs":"25ef86b9dd894b40724d78b99e2743654f09bb427a23ccf5940a620c6408688e","codegen/postprocessing/merge_extern_blocks.rs":"be5c5ff6d3d3d4e940814c4dc77f8d687aa6b053dcfbd2185c09616ba9022bf2","codegen/postprocessing/mod.rs":"d1e8c2864d5194a4cb2f6731c0ef582a55b363df9c4f888c26942ff37f728e1c","codegen/postprocessing/sort_semantically.rs":"3071dd509f2e5d3dfd99cafa6ee19bbacb9fec1c61a0b3f6e284a75c1f2c3db6","codegen/serialize.rs":"b1d8fff0bd9717ee7ca883fd3f376cf7b93adb65dc5bb89ede467b087e985a5f","codegen/struct_layout.rs":"7dfc814d3c914a0c53d8ed031baf543dab1def5959e8ab85220cad69a506383a","deps.rs":"5ee2332fdb10325f3b0a0c6d9ba94e13eb631ef39e955fa958afc3625bdb5448","extra_assertions.rs":"494534bd4f18b80d89b180c8a93733e6617edcf7deac413e9a73fd6e7bc9ced7","features.rs":"af20bd617cce27f6716ab3d61a1c8ddfaa46227f4a0d435b08a19d5f277cf8ba","ir/analysis/derive.rs":"ec514585eb40f0e3306bf3302aec0152a2e95e8dce13a67c36b5f00c0cbb76ef","ir/analysis/has_destructor.rs":"7a82f01e7e0595a31b56f7c398fa3019b3fe9100a2a73b56768f7e6943dcc3ce","ir/analysis/has_float.rs":"58ea1e38a59ef208400fd65d426cb5b288949df2d383b3a194fa01b99d2a87fa","ir/analysis/has_type_param_in_array.rs":"d1b9eb119dc14f662eb9bd1394c859f485479e4912589709cdd33f6752094e22","ir/analysis/has_vtable.rs":"368cf30fbe3fab7190fab48718b948caac5da8c9e797b709488716b919315636","ir/analysis/mod.rs":"0c10d8eeb26d7e6f4ce18e9dfb74ea1f9deff5cd350298aca3dc1041b17c20c4","ir/analysis/sizedness.rs":"944443d6aab35d2dd80e4f5e59176ac1e1c463ba2f0eb25d33f1d95dfac1a6d0","ir/analysis/template_params.rs":"d3cc41041b1c45e0b5be2c9f3f1cc0c2341481b9ff51589cba2428df4e6a1ea9","ir/annotations.rs":"f79de09803a3f3ccb33e366a10a707da98cd00a56ba18312ea927d6c977220a4","ir/comment.rs":"5dcfab0095d967daad9b2927093fce3786b1a2146171580afbf526ba56855e36","ir/comp.rs":"b7b28b96e4206b3215881d814661c63c5dd182f34b1163d54bcedbe85998cb06","ir/context.rs":"a7608f7d3dd607647f2af5f45fc7c09483d2a694f91265bba353a71652e2d419","ir/derive.rs":"e5581852eec87918901a129284b4965aefc8a19394187a8095779a084f28fabe","ir/dot.rs":"2d79d698e6ac59ce032840e62ff11103abed1d5e9e700cf383b492333eeebe1f","ir/enum_ty.rs":"0b612e0b57112068455eee519f894016d0a8f425d6a67b98c56b858f57d99f4a","ir/function.rs":"60407267473d785ea33ac854a70c8ca34749bc868024270992deca68a951f74c","ir/int.rs":"68a86182743ec338d58e42203364dc7c8970cb7ec3550433ca92f0c9489b4442","ir/item.rs":"880c982df0843cbdff38b9f9c3829a2d863a224e4de2260c41c3ac69e9148ad4","ir/item_kind.rs":"7666a1ff1b8260978b790a08b4139ab56b5c65714a5652bbcec7faa7443adc36","ir/layout.rs":"61a0e4250ceab889606973f930f4d692837a13a69ae2579738ff09843fed3d65","ir/mod.rs":"713cd537434567003197a123cbae679602c715e976d22f7b23dafd0826ea4c70","ir/module.rs":"7cae5561bcf84a5c3b1ee8f1c3336a33b7f44f0d5ffe885fb108289983fe763e","ir/objc.rs":"4eecdb754542d78acea27d2f547d18d49164047e6efaff8a8d283d6c2dc9875b","ir/template.rs":"4f0e3736558aa8ec359cd9749dc48f87bfff494dd195a67b39cfee7d8a7542ef","ir/traversal.rs":"0c37a0898801ad39bffc8dddd1ee8baa61bb7cf4f3fdc25c8fdd56b6c96ada65","ir/ty.rs":"ba0d7b16a1080caf4960cc7dea0d0800365da0dd5c6e735d508ec448e87b1d40","ir/var.rs":"ced3496cf0683fef91ce94aa09b0ee37255db8425ea8634d52bd73b1b5c160f6","lib.rs":"0bed6f10b2dd25753a40e6e7fa11239f08c05be414ad264c6d7e2f7a8b71f1b2","log_stubs.rs":"9f974e041e35c8c7e29985d27ae5cd0858d68f8676d1dc005c6388d7d011707f","parse.rs":"ccb2c506f08123708ae673b8216404fb22b4c951330662f9b7140b412b063260","regex_set.rs":"7dcc1ad52194f057ea00e8ebc9c23c465ffa6761eed6ba41560d2d02e03c43a6","time.rs":"8efe317e7c6b5ba8e0865ce7b49ca775ee8a02590f4241ef62f647fa3c22b68e"},"package":"c4243e6031260db77ede97ad86c27e501d646a27ab57b59a574f725d98ab1fb4"} -\ No newline at end of file -+{"files":{"Cargo.toml":"ae6de5b309f8bf07c259436b1113ccf405b2d7dd862e1b289bfef47a550956d1","LICENSE":"c23953d9deb0a3312dbeaf6c128a657f3591acee45067612fa68405eaa4525db","build.rs":"4a9c4ac3759572e17de312a9d3f4ced3b6fd3c71811729e5a8d06bfbd1ac8f82","callbacks.rs":"9cbda648159897f93a07dbe90a1ee9ba92e2b020a02bc9725b87db4d025df3b6","clang.rs":"a38d153516c6685b46723010793b2f4e8b16468f3cd3296781dea6e485cd66da","codegen/bitfield_unit.rs":"fddeaeab5859f4e82081865595b7705f5c0774d997df95fa5c655b81b9cae125","codegen/bitfield_unit_tests.rs":"9df86490de5e9d66ccea583dcb686dd440375dc1a3c3cf89a89d5de3883bf28a","codegen/dyngen.rs":"7d727a737c616f7f2d3a07d825be8baad9078b3f35ad96277904559b4534ffcc","codegen/error.rs":"5e308b8c54b68511fc8ea2ad15ddac510172c4ff460a80a265336440b0c9653d","codegen/helpers.rs":"5f24007a09e50db7bd2b49b07100cfed649c7b22232558e28c99c759d5d14152","codegen/impl_debug.rs":"71d8e28873ba2de466f2637a824746963702f0511728037d72ee5670c51194cb","codegen/impl_partialeq.rs":"f4599e32c66179ae515a6518a3e94b686689cf59f7dd9ab618c3fb69f17d2c77","codegen/mod.rs":"25ef86b9dd894b40724d78b99e2743654f09bb427a23ccf5940a620c6408688e","codegen/postprocessing/merge_extern_blocks.rs":"be5c5ff6d3d3d4e940814c4dc77f8d687aa6b053dcfbd2185c09616ba9022bf2","codegen/postprocessing/mod.rs":"d1e8c2864d5194a4cb2f6731c0ef582a55b363df9c4f888c26942ff37f728e1c","codegen/postprocessing/sort_semantically.rs":"3071dd509f2e5d3dfd99cafa6ee19bbacb9fec1c61a0b3f6e284a75c1f2c3db6","codegen/serialize.rs":"b1d8fff0bd9717ee7ca883fd3f376cf7b93adb65dc5bb89ede467b087e985a5f","codegen/struct_layout.rs":"7dfc814d3c914a0c53d8ed031baf543dab1def5959e8ab85220cad69a506383a","deps.rs":"5ee2332fdb10325f3b0a0c6d9ba94e13eb631ef39e955fa958afc3625bdb5448","extra_assertions.rs":"494534bd4f18b80d89b180c8a93733e6617edcf7deac413e9a73fd6e7bc9ced7","features.rs":"af20bd617cce27f6716ab3d61a1c8ddfaa46227f4a0d435b08a19d5f277cf8ba","ir/analysis/derive.rs":"ec514585eb40f0e3306bf3302aec0152a2e95e8dce13a67c36b5f00c0cbb76ef","ir/analysis/has_destructor.rs":"7a82f01e7e0595a31b56f7c398fa3019b3fe9100a2a73b56768f7e6943dcc3ce","ir/analysis/has_float.rs":"58ea1e38a59ef208400fd65d426cb5b288949df2d383b3a194fa01b99d2a87fa","ir/analysis/has_type_param_in_array.rs":"d1b9eb119dc14f662eb9bd1394c859f485479e4912589709cdd33f6752094e22","ir/analysis/has_vtable.rs":"368cf30fbe3fab7190fab48718b948caac5da8c9e797b709488716b919315636","ir/analysis/mod.rs":"0c10d8eeb26d7e6f4ce18e9dfb74ea1f9deff5cd350298aca3dc1041b17c20c4","ir/analysis/sizedness.rs":"944443d6aab35d2dd80e4f5e59176ac1e1c463ba2f0eb25d33f1d95dfac1a6d0","ir/analysis/template_params.rs":"d3cc41041b1c45e0b5be2c9f3f1cc0c2341481b9ff51589cba2428df4e6a1ea9","ir/annotations.rs":"f79de09803a3f3ccb33e366a10a707da98cd00a56ba18312ea927d6c977220a4","ir/comment.rs":"5dcfab0095d967daad9b2927093fce3786b1a2146171580afbf526ba56855e36","ir/comp.rs":"b7b28b96e4206b3215881d814661c63c5dd182f34b1163d54bcedbe85998cb06","ir/context.rs":"a7608f7d3dd607647f2af5f45fc7c09483d2a694f91265bba353a71652e2d419","ir/derive.rs":"e5581852eec87918901a129284b4965aefc8a19394187a8095779a084f28fabe","ir/dot.rs":"2d79d698e6ac59ce032840e62ff11103abed1d5e9e700cf383b492333eeebe1f","ir/enum_ty.rs":"0b612e0b57112068455eee519f894016d0a8f425d6a67b98c56b858f57d99f4a","ir/function.rs":"60407267473d785ea33ac854a70c8ca34749bc868024270992deca68a951f74c","ir/int.rs":"68a86182743ec338d58e42203364dc7c8970cb7ec3550433ca92f0c9489b4442","ir/item.rs":"b3909d9050994491642e143e6902dfbbb9d6b96cc9056f797c08a8e4f1477fa0","ir/item_kind.rs":"7666a1ff1b8260978b790a08b4139ab56b5c65714a5652bbcec7faa7443adc36","ir/layout.rs":"61a0e4250ceab889606973f930f4d692837a13a69ae2579738ff09843fed3d65","ir/mod.rs":"713cd537434567003197a123cbae679602c715e976d22f7b23dafd0826ea4c70","ir/module.rs":"7cae5561bcf84a5c3b1ee8f1c3336a33b7f44f0d5ffe885fb108289983fe763e","ir/objc.rs":"4eecdb754542d78acea27d2f547d18d49164047e6efaff8a8d283d6c2dc9875b","ir/template.rs":"4f0e3736558aa8ec359cd9749dc48f87bfff494dd195a67b39cfee7d8a7542ef","ir/traversal.rs":"0c37a0898801ad39bffc8dddd1ee8baa61bb7cf4f3fdc25c8fdd56b6c96ada65","ir/ty.rs":"ba0d7b16a1080caf4960cc7dea0d0800365da0dd5c6e735d508ec448e87b1d40","ir/var.rs":"ced3496cf0683fef91ce94aa09b0ee37255db8425ea8634d52bd73b1b5c160f6","lib.rs":"0bed6f10b2dd25753a40e6e7fa11239f08c05be414ad264c6d7e2f7a8b71f1b2","log_stubs.rs":"9f974e041e35c8c7e29985d27ae5cd0858d68f8676d1dc005c6388d7d011707f","parse.rs":"ccb2c506f08123708ae673b8216404fb22b4c951330662f9b7140b412b063260","regex_set.rs":"7dcc1ad52194f057ea00e8ebc9c23c465ffa6761eed6ba41560d2d02e03c43a6","time.rs":"8efe317e7c6b5ba8e0865ce7b49ca775ee8a02590f4241ef62f647fa3c22b68e"},"package":"c4243e6031260db77ede97ad86c27e501d646a27ab57b59a574f725d98ab1fb4"} -\ No newline at end of file -diff -up thunderbird-115.13.0/third_party/rust/bindgen/ir/item.rs.bindgen-clang18 thunderbird-115.13.0/third_party/rust/bindgen/ir/item.rs ---- thunderbird-115.13.0/third_party/rust/bindgen/ir/item.rs.bindgen-clang18 2024-07-09 23:46:38.000000000 +0200 -+++ thunderbird-115.13.0/third_party/rust/bindgen/ir/item.rs 2024-07-15 10:42:30.498619993 +0200 -@@ -1427,53 +1427,52 @@ impl Item { - } - } - -- // Guess how does clang treat extern "C" blocks? -- if cursor.kind() == CXCursor_UnexposedDecl { -- Err(ParseError::Recurse) -- } else { -- // 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!( -+ match cursor.kind() { -+ // 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. -+ 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!("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 - ); - } -- 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") { -- warn!( -- "Unhandled cursor kind {:?}: {:?}", -- cursor.kind(), -- cursor -- ); -- } -- } -+ Err(ParseError::Continue) - } -- -- Err(ParseError::Continue) - } - } - diff --git a/build-disable-elfhack.patch b/build-disable-elfhack.patch index 859c50f..c866a68 100644 --- a/build-disable-elfhack.patch +++ b/build-disable-elfhack.patch @@ -1,12 +1,12 @@ -diff -up firefox-115.2.0/toolkit/moz.configure.disable-elfhack firefox-115.2.0/toolkit/moz.configure ---- firefox-115.2.0/toolkit/moz.configure.disable-elfhack 2023-09-20 21:55:41.002788320 +0200 -+++ firefox-115.2.0/toolkit/moz.configure 2023-09-20 21:56:37.343757245 +0200 -@@ -1511,7 +1511,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 - - set_config("USE_ELF_HACK", use_elf_hack) - +diff -up firefox-128.0/toolkit/moz.configure.disable-elfhack firefox-128.0/toolkit/moz.configure +--- firefox-128.0/toolkit/moz.configure.disable-elfhack 2024-06-19 17:24:29.964976617 +0200 ++++ firefox-128.0/toolkit/moz.configure 2024-06-19 17:24:53.015843805 +0200 +@@ -1553,7 +1553,7 @@ with only_when("--enable-compile-environ + @depends(host, target) + 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") + ) diff --git a/build-disable-gamepad.patch b/build-disable-gamepad.patch new file mode 100644 index 0000000..a7134d6 --- /dev/null +++ b/build-disable-gamepad.patch @@ -0,0 +1,12 @@ +diff -up firefox-128.0/dom/gamepad/moz.build.gamepad firefox-128.0/dom/gamepad/moz.build +--- firefox-128.0/dom/gamepad/moz.build.gamepad 2024-07-30 16:24:07.326519645 +0200 ++++ firefox-128.0/dom/gamepad/moz.build 2024-07-30 16:24:15.817492673 +0200 +@@ -60,7 +60,7 @@ elif CONFIG["MOZ_WIDGET_TOOLKIT"] == "wi + elif CONFIG["MOZ_WIDGET_TOOLKIT"] == "android": + UNIFIED_SOURCES += ["android/AndroidGamepad.cpp"] + elif CONFIG["OS_ARCH"] in ("Linux", "FreeBSD", "DragonFly"): +- UNIFIED_SOURCES += ["linux/LinuxGamepad.cpp"] ++ UNIFIED_SOURCES += ["fallback/FallbackGamepad.cpp"] + else: + UNIFIED_SOURCES += ["fallback/FallbackGamepad.cpp"] + diff --git a/build-ffvpx.patch b/build-ffvpx.patch new file mode 100644 index 0000000..09e60bb --- /dev/null +++ b/build-ffvpx.patch @@ -0,0 +1,24 @@ +diff -up thunderbird-128.0/media/ffvpx/libavcodec/av1dec.c.build-ffvpx thunderbird-128.0/media/ffvpx/libavcodec/av1dec.c +--- thunderbird-128.0/media/ffvpx/libavcodec/av1dec.c.build-ffvpx 2024-06-24 22:43:40.000000000 +0200 ++++ thunderbird-128.0/media/ffvpx/libavcodec/av1dec.c 2024-07-10 11:20:23.200948767 +0200 +@@ -887,7 +887,7 @@ static av_cold int av1_decode_init(AVCod + ff_cbs_fragment_reset(&s->current_obu); + } + +- s->dovi.logctx = avctx; ++ s->dovi.logctx = (AVContext *) avctx; + s->dovi.dv_profile = 10; // default for AV1 + sd = ff_get_coded_side_data(avctx, AV_PKT_DATA_DOVI_CONF); + if (sd && sd->size > 0) +diff -up thunderbird-128.0/media/ffvpx/libavcodec/libdav1d.c.build-ffvpx thunderbird-128.0/media/ffvpx/libavcodec/libdav1d.c +--- thunderbird-128.0/media/ffvpx/libavcodec/libdav1d.c.build-ffvpx 2024-07-10 12:46:57.005539959 +0200 ++++ thunderbird-128.0/media/ffvpx/libavcodec/libdav1d.c 2024-07-10 12:47:19.067507705 +0200 +@@ -289,7 +289,7 @@ static av_cold int libdav1d_init(AVCodec + c->delay = res > 1 ? res : 0; + #endif + +- dav1d->dovi.logctx = c; ++ dav1d->dovi.logctx = (AVContext *) c; + dav1d->dovi.dv_profile = 10; // default for AV1 + sd = ff_get_coded_side_data(c, AV_PKT_DATA_DOVI_CONF); + if (sd && sd->size > 0) diff --git a/build-libaom.patch b/build-libaom.patch new file mode 100644 index 0000000..cab71b5 --- /dev/null +++ b/build-libaom.patch @@ -0,0 +1,20 @@ +diff -up firefox-128.0/config/external/moz.build.libaom firefox-128.0/config/external/moz.build +--- firefox-128.0/config/external/moz.build.libaom 2024-07-31 15:32:39.460374047 +0200 ++++ firefox-128.0/config/external/moz.build 2024-07-31 15:34:41.646064796 +0200 +@@ -39,8 +39,8 @@ if CONFIG["MOZ_VORBIS"]: + if not CONFIG["MOZ_SYSTEM_LIBVPX"]: + external_dirs += ["media/libvpx"] + ++external_dirs += ["media/libaom"] + if CONFIG["MOZ_AV1"]: +- external_dirs += ["media/libaom"] + external_dirs += ["media/libdav1d"] + + if not CONFIG["MOZ_SYSTEM_PNG"]: +diff -up firefox-128.0/third_party/aom/third_party/fastfeat/README.libaom firefox-128.0/third_party/aom/third_party/fastfeat/README +diff -up firefox-128.0/third_party/aom/third_party/googletest/README.libaom firefox-128.0/third_party/aom/third_party/googletest/README +diff -up firefox-128.0/third_party/aom/third_party/libwebm/README.libaom firefox-128.0/third_party/aom/third_party/libwebm/README +diff -up firefox-128.0/third_party/aom/third_party/libyuv/README.libaom firefox-128.0/third_party/aom/third_party/libyuv/README +diff -up firefox-128.0/third_party/aom/third_party/SVT-AV1/README.libaom firefox-128.0/third_party/aom/third_party/SVT-AV1/README +diff -up firefox-128.0/third_party/aom/third_party/vector/README.libaom firefox-128.0/third_party/aom/third_party/vector/README +diff -up firefox-128.0/third_party/aom/third_party/x86inc/README.libaom firefox-128.0/third_party/aom/third_party/x86inc/README diff --git a/disable-pipewire.patch b/disable-pipewire.patch index cea6b68..84017de 100644 --- a/disable-pipewire.patch +++ b/disable-pipewire.patch @@ -1,242 +1,274 @@ -diff --git a/dom/media/webrtc/third_party_build/webrtc.mozbuild b/dom/media/webrtc/third_party_build/webrtc.mozbuild -index 30169c36c2..335e3cb1a1 100644 ---- a/dom/media/webrtc/third_party_build/webrtc.mozbuild -+++ b/dom/media/webrtc/third_party_build/webrtc.mozbuild -@@ -35,6 +35,3 @@ if CONFIG['MOZ_WEBRTC']: - - if CONFIG['MOZ_X11']: - DEFINES['WEBRTC_USE_X11'] = True -- -- if CONFIG["MOZ_WIDGET_TOOLKIT"] == "gtk": -- DEFINES['WEBRTC_USE_PIPEWIRE'] = True -diff --git a/third_party/libwebrtc/modules/desktop_capture/desktop_capture_gn/moz.build b/third_party/libwebrtc/modules/desktop_capture/desktop_capture_gn/moz.build -index 8c56b6b8e5..eaf8d7087a 100644 ---- a/third_party/libwebrtc/modules/desktop_capture/desktop_capture_gn/moz.build -+++ b/third_party/libwebrtc/modules/desktop_capture/desktop_capture_gn/moz.build -@@ -232,102 +232,6 @@ if CONFIG["CPU_ARCH"] == "aarch64": - DEFINES["WEBRTC_ARCH_ARM64"] = True - DEFINES["WEBRTC_HAS_NEON"] = True - --if CONFIG["CPU_ARCH"] == "arm": -- -- CXXFLAGS += [ -- "-mfpu=neon" -- ] -- -- DEFINES["WEBRTC_ARCH_ARM"] = True -- DEFINES["WEBRTC_ARCH_ARM_V7"] = True -- DEFINES["WEBRTC_HAS_NEON"] = True -- DEFINES["WEBRTC_USE_PIPEWIRE"] = True -- DEFINES["_GNU_SOURCE"] = True -- -- LOCAL_INCLUDES += [ -- "/gfx/angle/checkout/include/", -- "/third_party/drm/drm/", -- "/third_party/drm/drm/include/", -- "/third_party/drm/drm/include/libdrm/", -- "/third_party/gbm/gbm/", -- "/third_party/libepoxy/libepoxy/include/", -- "/third_party/pipewire/" -- ] -- -- SOURCES += [ -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/base_capturer_pipewire.cc" -- ] -- -- UNIFIED_SOURCES += [ -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/egl_dmabuf.cc", -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/mouse_cursor_monitor_pipewire.cc", -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/restore_token_manager.cc", -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/screen_capture_portal_interface.cc", -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/screencast_portal.cc", -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/screencast_stream_utils.cc", -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/shared_screencast_stream.cc" -- ] -- --if CONFIG["CPU_ARCH"] == "mips32": -- -- DEFINES["MIPS32_LE"] = True -- DEFINES["MIPS_FPU_LE"] = True -- DEFINES["WEBRTC_USE_PIPEWIRE"] = True -- DEFINES["_GNU_SOURCE"] = True -- -- LOCAL_INCLUDES += [ -- "/gfx/angle/checkout/include/", -- "/third_party/drm/drm/", -- "/third_party/drm/drm/include/", -- "/third_party/drm/drm/include/libdrm/", -- "/third_party/gbm/gbm/", -- "/third_party/libepoxy/libepoxy/include/", -- "/third_party/pipewire/" -- ] -- -- SOURCES += [ -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/base_capturer_pipewire.cc" -- ] -- -- UNIFIED_SOURCES += [ -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/egl_dmabuf.cc", -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/mouse_cursor_monitor_pipewire.cc", -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/restore_token_manager.cc", -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/screen_capture_portal_interface.cc", -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/screencast_portal.cc", -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/screencast_stream_utils.cc", -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/shared_screencast_stream.cc" -- ] -- --if CONFIG["CPU_ARCH"] == "mips64": -- -- DEFINES["WEBRTC_USE_PIPEWIRE"] = True -- DEFINES["_GNU_SOURCE"] = True -- -- LOCAL_INCLUDES += [ -- "/gfx/angle/checkout/include/", -- "/third_party/drm/drm/", -- "/third_party/drm/drm/include/", -- "/third_party/drm/drm/include/libdrm/", -- "/third_party/gbm/gbm/", -- "/third_party/libepoxy/libepoxy/include/", -- "/third_party/pipewire/" -- ] -- -- SOURCES += [ -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/base_capturer_pipewire.cc" -- ] -- -- UNIFIED_SOURCES += [ -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/egl_dmabuf.cc", -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/mouse_cursor_monitor_pipewire.cc", -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/restore_token_manager.cc", -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/screen_capture_portal_interface.cc", -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/screencast_portal.cc", -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/screencast_stream_utils.cc", -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/shared_screencast_stream.cc" -- ] -- - if CONFIG["CPU_ARCH"] == "ppc64": - - DEFINES["USE_X11"] = "1" -@@ -410,97 +314,6 @@ if CONFIG["MOZ_DEBUG"] == "1" and CONFIG["OS_TARGET"] == "WINNT": - - DEFINES["_HAS_ITERATOR_DEBUGGING"] = "0" - --if CONFIG["CPU_ARCH"] == "aarch64" and CONFIG["OS_TARGET"] == "Linux": -- -- DEFINES["WEBRTC_USE_PIPEWIRE"] = True -- DEFINES["_GNU_SOURCE"] = True -- -- LOCAL_INCLUDES += [ -- "/gfx/angle/checkout/include/", -- "/third_party/drm/drm/", -- "/third_party/drm/drm/include/", -- "/third_party/drm/drm/include/libdrm/", -- "/third_party/gbm/gbm/", -- "/third_party/libepoxy/libepoxy/include/", -- "/third_party/pipewire/" -- ] -- -- SOURCES += [ -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/base_capturer_pipewire.cc" -- ] -- -- UNIFIED_SOURCES += [ -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/egl_dmabuf.cc", -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/mouse_cursor_monitor_pipewire.cc", -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/restore_token_manager.cc", -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/screen_capture_portal_interface.cc", -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/screencast_portal.cc", -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/screencast_stream_utils.cc", -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/shared_screencast_stream.cc" -- ] -- --if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux": -- -- CXXFLAGS += [ -- "-msse2" -- ] -- -- DEFINES["WEBRTC_USE_PIPEWIRE"] = True -- DEFINES["_GNU_SOURCE"] = True -- -- LOCAL_INCLUDES += [ -- "/gfx/angle/checkout/include/", -- "/third_party/drm/drm/", -- "/third_party/drm/drm/include/", -- "/third_party/drm/drm/include/libdrm/", -- "/third_party/gbm/gbm/", -- "/third_party/libepoxy/libepoxy/include/", -- "/third_party/pipewire/" -- ] -- -- SOURCES += [ -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/base_capturer_pipewire.cc" -- ] -- -- UNIFIED_SOURCES += [ -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/egl_dmabuf.cc", -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/mouse_cursor_monitor_pipewire.cc", -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/restore_token_manager.cc", -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/screen_capture_portal_interface.cc", -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/screencast_portal.cc", -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/screencast_stream_utils.cc", -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/shared_screencast_stream.cc" -- ] -- --if CONFIG["CPU_ARCH"] == "x86_64" and CONFIG["OS_TARGET"] == "Linux": -- -- DEFINES["WEBRTC_USE_PIPEWIRE"] = True -- DEFINES["_GNU_SOURCE"] = True -- -- LOCAL_INCLUDES += [ -- "/gfx/angle/checkout/include/", -- "/third_party/drm/drm/", -- "/third_party/drm/drm/include/", -- "/third_party/drm/drm/include/libdrm/", -- "/third_party/gbm/gbm/", -- "/third_party/libepoxy/libepoxy/include/", -- "/third_party/pipewire/" -- ] -- -- SOURCES += [ -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/base_capturer_pipewire.cc" -- ] -- -- UNIFIED_SOURCES += [ -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/egl_dmabuf.cc", -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/mouse_cursor_monitor_pipewire.cc", -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/restore_token_manager.cc", -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/screen_capture_portal_interface.cc", -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/screencast_portal.cc", -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/screencast_stream_utils.cc", -- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/shared_screencast_stream.cc" -- ] -- - if CONFIG["CPU_ARCH"] == "aarch64" and CONFIG["MOZ_X11"] == "1" and CONFIG["OS_TARGET"] == "Linux": - - DEFINES["USE_X11"] = "1" -diff --git a/third_party/libwebrtc/modules/portal/portal_gn/moz.build b/third_party/libwebrtc/modules/portal/portal_gn/moz.build -index 77603c780b..e6f2c9e724 100644 ---- a/third_party/libwebrtc/modules/portal/portal_gn/moz.build -+++ b/third_party/libwebrtc/modules/portal/portal_gn/moz.build -@@ -26,7 +26,7 @@ DEFINES["WEBRTC_MOZILLA_BUILD"] = True - DEFINES["WEBRTC_NON_STATIC_TRACE_EVENT_HANDLERS"] = "0" - DEFINES["WEBRTC_POSIX"] = True - DEFINES["WEBRTC_STRICT_FIELD_TRIALS"] = "0" --DEFINES["WEBRTC_USE_PIPEWIRE"] = True -+DEFINES["WEBRTC_USE_PIPEWIRE"] = False - DEFINES["_FILE_OFFSET_BITS"] = "64" - DEFINES["_GNU_SOURCE"] = True - DEFINES["_LARGEFILE64_SOURCE"] = True -diff --git a/third_party/libwebrtc/third_party/pipewire/pipewire_gn/moz.build b/third_party/libwebrtc/third_party/pipewire/pipewire_gn/moz.build -index 86a0daf8fa..e895f2eb15 100644 ---- a/third_party/libwebrtc/third_party/pipewire/pipewire_gn/moz.build -+++ b/third_party/libwebrtc/third_party/pipewire/pipewire_gn/moz.build -@@ -24,7 +24,7 @@ DEFINES["WEBRTC_MOZILLA_BUILD"] = True - DEFINES["WEBRTC_NON_STATIC_TRACE_EVENT_HANDLERS"] = "0" - DEFINES["WEBRTC_POSIX"] = True - DEFINES["WEBRTC_STRICT_FIELD_TRIALS"] = "0" --DEFINES["WEBRTC_USE_PIPEWIRE"] = True -+DEFINES["WEBRTC_USE_PIPEWIRE"] = False - DEFINES["_FILE_OFFSET_BITS"] = "64" - DEFINES["_GNU_SOURCE"] = True - DEFINES["_LARGEFILE64_SOURCE"] = True +diff -up firefox-128.0/dom/media/webrtc/third_party_build/webrtc.mozbuild.disable-pipewire firefox-128.0/dom/media/webrtc/third_party_build/webrtc.mozbuild +--- firefox-128.0/dom/media/webrtc/third_party_build/webrtc.mozbuild.disable-pipewire 2024-07-17 14:01:36.290603114 +0200 ++++ firefox-128.0/dom/media/webrtc/third_party_build/webrtc.mozbuild 2024-07-17 14:52:02.039208338 +0200 +@@ -31,7 +31,7 @@ if CONFIG["MOZ_WEBRTC"]: + and CONFIG["TARGET_CPU"].startswith("mips") + ) + ): +- DEFINES["WEBRTC_USE_PIPEWIRE"] = True ++ DEFINES["WEBRTC_USE_PIPEWIRE"] = False + elif CONFIG["OS_TARGET"] == "Darwin": + DEFINES["WEBRTC_MAC"] = True + elif CONFIG["OS_TARGET"] == "WINNT": +diff -up firefox-128.0/third_party/libwebrtc/modules/desktop_capture/desktop_capture_gn/moz.build.disable-pipewire firefox-128.0/third_party/libwebrtc/modules/desktop_capture/desktop_capture_gn/moz.build +--- firefox-128.0/third_party/libwebrtc/modules/desktop_capture/desktop_capture_gn/moz.build.disable-pipewire 2024-07-17 14:01:36.291603109 +0200 ++++ firefox-128.0/third_party/libwebrtc/modules/desktop_capture/desktop_capture_gn/moz.build 2024-07-17 14:56:35.419826494 +0200 +@@ -241,102 +241,6 @@ if CONFIG["TARGET_CPU"] == "aarch64": + DEFINES["WEBRTC_ARCH_ARM64"] = True + DEFINES["WEBRTC_HAS_NEON"] = True + +-if CONFIG["TARGET_CPU"] == "arm": +- +- CXXFLAGS += [ +- "-mfpu=neon" +- ] +- +- DEFINES["WEBRTC_ARCH_ARM"] = True +- DEFINES["WEBRTC_ARCH_ARM_V7"] = True +- DEFINES["WEBRTC_HAS_NEON"] = True +- DEFINES["WEBRTC_USE_PIPEWIRE"] = True +- DEFINES["_GNU_SOURCE"] = True +- +- LOCAL_INCLUDES += [ +- "/gfx/angle/checkout/include/", +- "/third_party/drm/drm/", +- "/third_party/drm/drm/include/", +- "/third_party/drm/drm/include/libdrm/", +- "/third_party/gbm/gbm/", +- "/third_party/libepoxy/libepoxy/include/", +- "/third_party/pipewire/" +- ] +- +- SOURCES += [ +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/base_capturer_pipewire.cc" +- ] +- +- UNIFIED_SOURCES += [ +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/egl_dmabuf.cc", +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/mouse_cursor_monitor_pipewire.cc", +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/restore_token_manager.cc", +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/screen_capture_portal_interface.cc", +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/screencast_portal.cc", +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/screencast_stream_utils.cc", +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/shared_screencast_stream.cc" +- ] +- +-if CONFIG["TARGET_CPU"] == "mips32": +- +- DEFINES["MIPS32_LE"] = True +- DEFINES["MIPS_FPU_LE"] = True +- DEFINES["WEBRTC_USE_PIPEWIRE"] = True +- DEFINES["_GNU_SOURCE"] = True +- +- LOCAL_INCLUDES += [ +- "/gfx/angle/checkout/include/", +- "/third_party/drm/drm/", +- "/third_party/drm/drm/include/", +- "/third_party/drm/drm/include/libdrm/", +- "/third_party/gbm/gbm/", +- "/third_party/libepoxy/libepoxy/include/", +- "/third_party/pipewire/" +- ] +- +- SOURCES += [ +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/base_capturer_pipewire.cc" +- ] +- +- UNIFIED_SOURCES += [ +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/egl_dmabuf.cc", +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/mouse_cursor_monitor_pipewire.cc", +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/restore_token_manager.cc", +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/screen_capture_portal_interface.cc", +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/screencast_portal.cc", +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/screencast_stream_utils.cc", +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/shared_screencast_stream.cc" +- ] +- +-if CONFIG["TARGET_CPU"] == "mips64": +- +- DEFINES["WEBRTC_USE_PIPEWIRE"] = True +- DEFINES["_GNU_SOURCE"] = True +- +- LOCAL_INCLUDES += [ +- "/gfx/angle/checkout/include/", +- "/third_party/drm/drm/", +- "/third_party/drm/drm/include/", +- "/third_party/drm/drm/include/libdrm/", +- "/third_party/gbm/gbm/", +- "/third_party/libepoxy/libepoxy/include/", +- "/third_party/pipewire/" +- ] +- +- SOURCES += [ +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/base_capturer_pipewire.cc" +- ] +- +- UNIFIED_SOURCES += [ +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/egl_dmabuf.cc", +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/mouse_cursor_monitor_pipewire.cc", +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/restore_token_manager.cc", +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/screen_capture_portal_interface.cc", +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/screencast_portal.cc", +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/screencast_stream_utils.cc", +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/shared_screencast_stream.cc" +- ] +- + if CONFIG["TARGET_CPU"] == "ppc64": + + DEFINES["USE_X11"] = "1" +@@ -389,35 +293,6 @@ if CONFIG["MOZ_DEBUG"] == "1" and CONFIG + + DEFINES["_HAS_ITERATOR_DEBUGGING"] = "0" + +-if CONFIG["OS_TARGET"] == "Linux" and CONFIG["TARGET_CPU"] == "aarch64": +- +- DEFINES["WEBRTC_USE_PIPEWIRE"] = True +- DEFINES["_GNU_SOURCE"] = True +- +- LOCAL_INCLUDES += [ +- "/gfx/angle/checkout/include/", +- "/third_party/drm/drm/", +- "/third_party/drm/drm/include/", +- "/third_party/drm/drm/include/libdrm/", +- "/third_party/gbm/gbm/", +- "/third_party/libepoxy/libepoxy/include/", +- "/third_party/pipewire/" +- ] +- +- SOURCES += [ +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/base_capturer_pipewire.cc" +- ] +- +- UNIFIED_SOURCES += [ +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/egl_dmabuf.cc", +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/mouse_cursor_monitor_pipewire.cc", +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/restore_token_manager.cc", +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/screen_capture_portal_interface.cc", +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/screencast_portal.cc", +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/screencast_stream_utils.cc", +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/shared_screencast_stream.cc" +- ] +- + if CONFIG["OS_TARGET"] == "Linux" and CONFIG["TARGET_CPU"] == "riscv64": + + DEFINES["USE_X11"] = "1" +@@ -446,95 +321,6 @@ if CONFIG["OS_TARGET"] == "Linux" and CO + "/third_party/libwebrtc/modules/desktop_capture/linux/x11/x_window_property.cc" + ] + +-if CONFIG["OS_TARGET"] == "Linux" and CONFIG["TARGET_CPU"] == "x86": +- +- CXXFLAGS += [ +- "-msse2" +- ] +- +- DEFINES["WEBRTC_USE_PIPEWIRE"] = True +- DEFINES["_GNU_SOURCE"] = True +- +- LOCAL_INCLUDES += [ +- "/gfx/angle/checkout/include/", +- "/third_party/drm/drm/", +- "/third_party/drm/drm/include/", +- "/third_party/drm/drm/include/libdrm/", +- "/third_party/gbm/gbm/", +- "/third_party/libepoxy/libepoxy/include/", +- "/third_party/pipewire/" +- ] +- +- SOURCES += [ +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/base_capturer_pipewire.cc" +- ] +- +- UNIFIED_SOURCES += [ +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/egl_dmabuf.cc", +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/mouse_cursor_monitor_pipewire.cc", +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/restore_token_manager.cc", +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/screen_capture_portal_interface.cc", +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/screencast_portal.cc", +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/screencast_stream_utils.cc", +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/shared_screencast_stream.cc" +- ] +- +-if CONFIG["OS_TARGET"] == "Linux" and CONFIG["TARGET_CPU"] == "x86_64": +- +- DEFINES["WEBRTC_USE_PIPEWIRE"] = True +- DEFINES["_GNU_SOURCE"] = True +- +- LOCAL_INCLUDES += [ +- "/gfx/angle/checkout/include/", +- "/third_party/drm/drm/", +- "/third_party/drm/drm/include/", +- "/third_party/drm/drm/include/libdrm/", +- "/third_party/gbm/gbm/", +- "/third_party/libepoxy/libepoxy/include/", +- "/third_party/pipewire/" +- ] +- +- SOURCES += [ +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/base_capturer_pipewire.cc" +- ] +- +- UNIFIED_SOURCES += [ +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/egl_dmabuf.cc", +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/mouse_cursor_monitor_pipewire.cc", +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/restore_token_manager.cc", +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/screen_capture_portal_interface.cc", +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/screencast_portal.cc", +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/screencast_stream_utils.cc", +- "/third_party/libwebrtc/modules/desktop_capture/linux/wayland/shared_screencast_stream.cc" +- ] +- +-if CONFIG["MOZ_X11"] == "1" and CONFIG["OS_TARGET"] == "Linux" and CONFIG["TARGET_CPU"] == "aarch64": +- +- DEFINES["USE_X11"] = "1" +- DEFINES["WEBRTC_USE_X11"] = True +- +- OS_LIBS += [ +- "X11", +- "Xcomposite", +- "Xdamage", +- "Xext", +- "Xfixes", +- "Xrandr", +- "Xrender" +- ] +- +- UNIFIED_SOURCES += [ +- "/third_party/libwebrtc/modules/desktop_capture/linux/x11/mouse_cursor_monitor_x11.cc", +- "/third_party/libwebrtc/modules/desktop_capture/linux/x11/screen_capturer_x11.cc", +- "/third_party/libwebrtc/modules/desktop_capture/linux/x11/shared_x_display.cc", +- "/third_party/libwebrtc/modules/desktop_capture/linux/x11/window_capturer_x11.cc", +- "/third_party/libwebrtc/modules/desktop_capture/linux/x11/window_finder_x11.cc", +- "/third_party/libwebrtc/modules/desktop_capture/linux/x11/window_list_utils.cc", +- "/third_party/libwebrtc/modules/desktop_capture/linux/x11/x_atom_cache.cc", +- "/third_party/libwebrtc/modules/desktop_capture/linux/x11/x_error_trap.cc", +- "/third_party/libwebrtc/modules/desktop_capture/linux/x11/x_server_pixel_buffer.cc", +- "/third_party/libwebrtc/modules/desktop_capture/linux/x11/x_window_property.cc" +- ] + + if CONFIG["MOZ_X11"] == "1" and CONFIG["OS_TARGET"] == "Linux" and CONFIG["TARGET_CPU"] == "arm": + +diff -up firefox-128.0/third_party/libwebrtc/modules/portal/portal_gn/moz.build.disable-pipewire firefox-128.0/third_party/libwebrtc/modules/portal/portal_gn/moz.build +--- firefox-128.0/third_party/libwebrtc/modules/portal/portal_gn/moz.build.disable-pipewire 2024-07-04 18:20:41.000000000 +0200 ++++ firefox-128.0/third_party/libwebrtc/modules/portal/portal_gn/moz.build 2024-07-17 14:01:36.291603109 +0200 +@@ -27,7 +27,7 @@ DEFINES["WEBRTC_MOZILLA_BUILD"] = True + DEFINES["WEBRTC_NON_STATIC_TRACE_EVENT_HANDLERS"] = "0" + DEFINES["WEBRTC_POSIX"] = True + DEFINES["WEBRTC_STRICT_FIELD_TRIALS"] = "0" +-DEFINES["WEBRTC_USE_PIPEWIRE"] = True ++DEFINES["WEBRTC_USE_PIPEWIRE"] = False + DEFINES["_FILE_OFFSET_BITS"] = "64" + DEFINES["_GNU_SOURCE"] = True + DEFINES["_LARGEFILE64_SOURCE"] = True +diff -up firefox-128.0/third_party/libwebrtc/third_party/pipewire/pipewire_gn/moz.build.disable-pipewire firefox-128.0/third_party/libwebrtc/third_party/pipewire/pipewire_gn/moz.build +--- firefox-128.0/third_party/libwebrtc/third_party/pipewire/pipewire_gn/moz.build.disable-pipewire 2024-07-04 18:20:41.000000000 +0200 ++++ firefox-128.0/third_party/libwebrtc/third_party/pipewire/pipewire_gn/moz.build 2024-07-17 14:01:36.291603109 +0200 +@@ -25,7 +25,7 @@ DEFINES["WEBRTC_MOZILLA_BUILD"] = True + DEFINES["WEBRTC_NON_STATIC_TRACE_EVENT_HANDLERS"] = "0" + DEFINES["WEBRTC_POSIX"] = True + DEFINES["WEBRTC_STRICT_FIELD_TRIALS"] = "0" +-DEFINES["WEBRTC_USE_PIPEWIRE"] = True ++DEFINES["WEBRTC_USE_PIPEWIRE"] = False + DEFINES["_FILE_OFFSET_BITS"] = "64" + DEFINES["_GNU_SOURCE"] = True + DEFINES["_LARGEFILE64_SOURCE"] = True diff --git a/distribution.ini b/distribution.ini index 11f1f96..5d5c4d6 100644 --- a/distribution.ini +++ b/distribution.ini @@ -1,9 +1,9 @@ [Global] -id=fedora +id=redhat version=1.0 -about=Mozilla Firefox for Fedora +about=Mozilla Firefox for Red Hat Enterprise Linux [Preferences] -app.distributor=fedora -app.distributor.channel=fedora -app.partner.fedora=fedora +app.distributor=redhat +app.distributor.channel=redhat +app.partner.redhat=redhat diff --git a/fedora-shebang-build.patch b/fedora-shebang-build.patch deleted file mode 100644 index 9ade86c..0000000 --- a/fedora-shebang-build.patch +++ /dev/null @@ -1,9 +0,0 @@ -diff -up firefox-73.0/build/unix/run-mozilla.sh.old firefox-73.0/build/unix/run-mozilla.sh ---- firefox-73.0/build/unix/run-mozilla.sh.old 2020-02-12 09:58:00.150895904 +0100 -+++ firefox-73.0/build/unix/run-mozilla.sh 2020-02-12 09:58:06.505860696 +0100 -@@ -1,4 +1,4 @@ --#!/bin/sh -+#!/usr/bin/sh - # - # This Source Code Form is subject to the terms of the Mozilla Public - # License, v. 2.0. If a copy of the MPL was not distributed with this diff --git a/firefox-enable-addons.patch b/firefox-enable-addons.patch index 15d0707..5aeb23f 100644 --- a/firefox-enable-addons.patch +++ b/firefox-enable-addons.patch @@ -1,10 +1,10 @@ -diff -up firefox-55.0/browser/app/profile/firefox.js.addons firefox-55.0/browser/app/profile/firefox.js ---- firefox-55.0/browser/app/profile/firefox.js.addons 2017-08-02 10:58:30.566363833 +0200 -+++ firefox-55.0/browser/app/profile/firefox.js 2017-08-02 10:59:15.377216959 +0200 -@@ -65,7 +65,8 @@ pref("extensions.systemAddon.update.url" +diff -up firefox-128.0/browser/app/profile/firefox.js.addons firefox-128.0/browser/app/profile/firefox.js +--- firefox-128.0/browser/app/profile/firefox.js.addons 2024-06-13 11:47:04.255428350 +0200 ++++ firefox-128.0/browser/app/profile/firefox.js 2024-06-13 11:53:00.442837371 +0200 +@@ -56,7 +56,8 @@ pref("extensions.systemAddon.update.enab // 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", 0); +pref("extensions.showMismatchUI", false); diff --git a/firefox-mozconfig b/firefox-mozconfig index 952a799..9944800 100644 --- a/firefox-mozconfig +++ b/firefox-mozconfig @@ -21,9 +21,11 @@ ac_add_options --with-unsigned-addon-scopes=app,system export BUILD_OFFICIAL=1 export MOZILLA_OFFICIAL=1 -export MOZ_TELEMETRY_REPORTING=1 export MOZ_UPDATE_CHANNEL=release export MOZ_APP_REMOTINGNAME=firefox +mk_add_options MOZ_TELEMETRY_REPORTING= +mk_add_options MOZ_NORMANDY= +mk_add_options MOZ_SERVICES_HEALTHREPORT= mk_add_options BUILD_OFFICIAL=1 mk_add_options MOZILLA_OFFICIAL=1 mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/objdir diff --git a/firefox-redhat-default-prefs.js b/firefox-redhat-default-prefs.js index cdb98dd..4263a3d 100644 --- a/firefox-redhat-default-prefs.js +++ b/firefox-redhat-default-prefs.js @@ -36,3 +36,7 @@ pref("browser.gnome-search-provider.enabled",true); pref("media.navigator.mediadatadecoder_vpx_enabled", true); /* See https://bugzilla.redhat.com/show_bug.cgi?id=1672424 */ pref("storage.nfs_filesystem", true); +/* Disable Private Attribution collection and submission */ +pref("dom.private-attribution.submission.enabled", false); +/* ECH is not supported in the system nss */ +pref("security.tls.ech.grease_probability", 0); diff --git a/firefox-tests-xpcshell-freeze.patch b/firefox-tests-xpcshell-freeze.patch deleted file mode 100644 index 1115417..0000000 --- a/firefox-tests-xpcshell-freeze.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -up firefox-88.0/testing/xpcshell/runxpcshelltests.py.old firefox-88.0/testing/xpcshell/runxpcshelltests.py ---- firefox-88.0/testing/xpcshell/runxpcshelltests.py.old 2021-04-30 10:45:14.466616224 +0200 -+++ firefox-88.0/testing/xpcshell/runxpcshelltests.py 2021-04-30 10:45:21.339525085 +0200 -@@ -1382,8 +1382,8 @@ class XPCShellTests(object): - self.log.info("Process %s" % label) - self.log.info(msg) - -- dumpOutput(proc.stdout, "stdout") -- dumpOutput(proc.stderr, "stderr") -+ #dumpOutput(proc.stdout, "stdout") -+ #dumpOutput(proc.stderr, "stderr") - self.nodeProc = {} - - def startHttp3Server(self): diff --git a/firefox.sh.in b/firefox.sh.in index 6a3f6e4..1a1c4b5 100644 --- a/firefox.sh.in +++ b/firefox.sh.in @@ -64,7 +64,6 @@ MOZ_DIST_BIN="$MOZ_LIB_DIR/firefox" MOZ_LANGPACKS_DIR="$MOZ_DIST_BIN/langpacks" MOZ_EXTENSIONS_PROFILE_DIR="$HOME/.mozilla/extensions/{ec8030f7-c20a-464f-9b0e-13a3a9e97384}" MOZ_PROGRAM="$MOZ_DIST_BIN/$MOZ_FIREFOX_FILE" -MOZ_LAUNCHER="$MOZ_DIST_BIN/run-mozilla.sh" GETENFORCE_FILE="/usr/sbin/getenforce" ## @@ -247,35 +246,6 @@ fi NSS_SSL_CBC_RANDOM_IV=${NSS_SSL_CBC_RANDOM_IV-1} export NSS_SSL_CBC_RANDOM_IV -# Prepare command line arguments -script_args="" -pass_arg_count=0 -while [ $# -gt $pass_arg_count ] -do - case "$1" in - -g | --debug) - script_args="$script_args -g" - debugging=1 - shift - ;; - -d | --debugger) - if [ $# -gt 1 ]; then - script_args="$script_args -d $2" - shift 2 - else - shift - fi - ;; - *) - # Move the unrecognized argument to the end of the list. - arg="$1" - shift - set -- "$@" "$arg" - pass_arg_count=`expr $pass_arg_count + 1` - ;; - esac -done - # Flatpak specific environment variables %FLATPAK_ENV_VARS% @@ -286,7 +256,7 @@ export MOZ_ALLOW_DOWNGRADE=1 debugging=0 if [ $debugging = 1 ] then - echo $MOZ_LAUNCHER $script_args $MOZ_PROGRAM "$@" + echo $MOZ_PROGRAM "$@" fi -exec $MOZ_LAUNCHER $script_args $MOZ_PROGRAM "$@" +exec $MOZ_PROGRAM "$@" diff --git a/firefox.spec b/firefox.spec index 8603f81..221c962 100644 --- a/firefox.spec +++ b/firefox.spec @@ -38,6 +38,14 @@ function dist_to_rhel_minor(str, start) if match then return 5 end + match = string.match(str, ".el10_%d+") + if match then + return string.sub(match, 7) + end + match = string.match(str, ".el10") + if match then + return 0 + end return -1 end} @@ -47,51 +55,50 @@ end} %global system_nss 1 %global bundle_nss 0 +%if 0%{?rhel} == 7 +%global bundle_nss 0 +%global system_nss 0 +%endif %if 0%{?rhel} == 8 - %if %{rhel_minor_version} <= 6 + %if %{rhel_minor_version} < 8 %global bundle_nss 1 %global system_nss 1 %endif %endif %if 0%{?rhel} == 9 - %if %{rhel_minor_version} <= 0 + %if %{rhel_minor_version} < 2 %global bundle_nss 1 %global system_nss 1 %endif %endif -%global dts_version 10 +%global dts_version 11 %global llvm_version 7.0 %global nspr_version 4.35 %global nspr_version_max 4.36 -%global nss_version 3.90 -%global nss_version_max 3.91 +%global nss_version 3.101 +%global nss_version_max 3.102 %global rust_version 1.66 %global system_libvpx 0 +# Workaround for missing httpd24 libs in rust +%if 0%{?rhel} == 7 +%global ___build_pre %{___build_pre}; source scl_source enable httpd24 || : +%endif # Toolsets setup %global use_dts 0 %global use_gcc_ts 0 -%global use_llvm_ts 0 %global use_nodejs_scl 0 -%global use_rust_ts 1 %global use_python3_scl 0 %global nodejs_build_req nodejs -%if 0%{?rhel} >= 8 - %global use_rust_ts 0 -%endif - -%if 0%{?rhel} == 8 && %{rhel_minor_version} < 6 - %ifarch aarch64 +%if 0%{?rhel} > 7 && 0%{?rhel} < 10 %global use_gcc_ts 1 - %endif %endif %if 0%{?rhel} == 7 %global use_dts 1 - %global use_llvm_ts 1 %global use_nodejs_scl 1 %global nodejs_build_req rh-nodejs10-nodejs %global llvm_version 11.0 @@ -100,9 +107,7 @@ end} %if 0%{?disable_toolsets} %global use_dts 0 -%global use_llvm_ts 0 %global use_nodejs_scl 0 -%global use_rust_ts 0 %global use_python3_scl 0 %endif @@ -122,7 +127,7 @@ end} # If set to .b2 or .b3 ... the processed source file needs to be renamed before upload, e.g. # firefox-102.8.0esr.b2.processed-source.tar.xz # When unset use processed source file name as is. -%global buildnum .b2 +##global buildnum .b2 %bcond_without langpacks @@ -132,12 +137,12 @@ end} Summary: Mozilla Firefox Web browser Name: firefox -Version: 115.14.0 -Release: 2%{?dist} +Version: 128.3.0 +Release: 1%{?dist} URL: https://www.mozilla.org/firefox/ License: MPLv1.1 or GPLv2+ or LGPLv2+ -%if 0%{?rhel} == 9 +%if 0%{?rhel} >= 9 ExcludeArch: %{ix86} %endif %if 0%{?rhel} == 8 @@ -163,7 +168,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}-20240801.tar.xz +Source1: firefox-langpacks-%{version}%{?pre_version}-20240924.tar.xz %endif Source2: cbindgen-vendor.tar.xz Source3: process-official-tarball @@ -188,8 +193,8 @@ Source37: mochitest-python.tar.gz # Bundled libraries Source401: nss-setup-flags-env.inc Source402: nspr-4.35.0-1.el8_1.src.rpm -Source403: nss-3.90.0-3.el8_1.src.rpm -Source404: nss-3.90.0-3.el9_0.src.rpm +Source403: nss-3.101.0-7.el8_2.src.rpm +Source404: nss-3.101.0-7.el9_2.src.rpm # ---- RHEL specific patches --- # -- Downstream only -- @@ -200,13 +205,13 @@ Patch05: build-rhel7-lower-node-min-version.patch Patch06: build-ppc64-abiv2.patch Patch07: build-rhel7-nasm-dwarf.patch # Disable PipeWire support for PipeWire 0.2 -Patch08: disable-pipewire.patch -Patch09: rhbz-2131158-webrtc-nss-fix.patch +Patch08: disable-pipewire.patch +Patch09: rhbz-2131158-webrtc-nss-fix.patch +Patch10: build-ffvpx.patch +Patch11: build-disable-gamepad.patch # -- Upstreamed patches -- Patch51: mozilla-bmo1170092.patch -# https://github.com/rust-lang/rust-bindgen/pull/2689 -Patch52: bindgen-clang18.patch # -- Submitted upstream, not merged -- Patch101: mozilla-bmo1636168-fscreen.patch @@ -222,11 +227,11 @@ Patch106: mozilla-bmo998749.patch Patch107: mozilla-bmo1716707-swizzle.patch Patch108: mozilla-bmo1716707-svg.patch Patch109: mozilla-bmo1789216-disable-av1.patch +Patch110: build-libaom.patch # ---- Fedora specific patches ---- Patch151: firefox-enable-addons.patch Patch152: rhbz-1173156.patch -Patch153: fedora-shebang-build.patch Patch154: firefox-nss-addon-hack.patch # ARM run-time patch Patch155: rhbz-1354671.patch @@ -235,10 +240,8 @@ Patch155: rhbz-1354671.patch # Generate without context by # GENDIFF_DIFF_ARGS=-U0 gendiff firefox-xxxx .firefox-tests-xpcshell # GENDIFF_DIFF_ARGS=-U0 gendiff firefox-xxxx .firefox-tests-reftest -Patch201: firefox-tests-xpcshell-freeze.patch # ---- Security patches ---- -Patch301: CVE-2023-44488-libvpx.patch # BUILD REQURES/REQUIRES %if %{?system_nss} && !0%{?bundle_nss} @@ -255,7 +258,6 @@ BuildRequires: libvpx-devel >= 1.8.2 %endif BuildRequires: bzip2-devel -BuildRequires: dbus-glib-devel BuildRequires: desktop-file-utils BuildRequires: libappstream-glib BuildRequires: libjpeg-devel @@ -298,6 +300,7 @@ BuildRequires: pipewire-devel %if 0%{?rhel} == 8 BuildRequires: cargo +BuildRequires: clang-libs >= %{llvm_version} BuildRequires: clang-devel >= %{llvm_version} BuildRequires: clang >= %{llvm_version} BuildRequires: llvm-devel >= %{llvm_version} @@ -310,7 +313,7 @@ BuildRequires: rustfmt >= %{rust_version} BuildRequires: rust >= %{rust_version} %endif -%if 0%{?rhel} == 9 +%if 0%{?rhel} >= 9 BuildRequires: cargo BuildRequires: clang clang-libs llvm llvm-devel BuildRequires: gcc @@ -320,23 +323,23 @@ BuildRequires: python3-setuptools BuildRequires: rust %endif +%if 0%{?rhel} == 7 +BuildRequires: cargo +BuildRequires: clang clang-libs llvm llvm-devel +BuildRequires: gcc +BuildRequires: gcc-c++ +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: rust +BuildRequires: httpd24-curl +%endif + %if 0%{?use_dts} BuildRequires: devtoolset-%{dts_version}-gcc BuildRequires: devtoolset-%{dts_version}-gcc-c++ BuildRequires: devtoolset-%{dts_version}-libatomic-devel %endif -%if 0%{?use_llvm_ts} -BuildRequires: llvm-toolset-%{llvm_version} -BuildRequires: llvm-toolset-%{llvm_version}-clang -BuildRequires: llvm-toolset-%{llvm_version}-clang-devel -BuildRequires: llvm-toolset-%{llvm_version}-llvm-devel -%endif - -%if 0%{?use_rust_ts} -BuildRequires: rust-toolset-%{rust_version} -%endif - # Bundled nss/nspr requirement %if 0%{?bundle_nss} BuildRequires: gawk @@ -403,10 +406,11 @@ BuildRequires: xorg-x11-fonts-misc BuildRequires: xorg-x11-server-Xvfb %endif -%if 0%{?rhel} == 8 && %{rhel_minor_version} < 6 - %ifarch aarch64 -BuildRequires: gcc-toolset-12-gcc-plugin-annobin - %endif +%if 0%{?use_gcc_ts} +BuildRequires: gcc-toolset-13-runtime +BuildRequires: gcc-toolset-13-binutils +BuildRequires: gcc-toolset-13-gcc +BuildRequires: gcc-toolset-13-gcc-plugin-annobin %endif Requires: mozilla-filesystem @@ -430,12 +434,18 @@ Provides: bundled(audioipc-2) Provides: bundled(bergamot-translator) Provides: bundled(brotli) Provides: bundled(bsdiff) +Provides: bundled(bspatch) Provides: bundled(cairo) Provides: bundled(cfworker) Provides: bundled(cld2) +Provides: bundled(content) +Provides: bundled(content_analysis_sdk) Provides: bundled(cubeb) +Provides: bundled(cups) +Provides: bundled(d3) Provides: bundled(d3.js) Provides: bundled(double-conversion) +Provides: bundled(drm) Provides: bundled(expat) Provides: bundled(fastText) Provides: bundled(fathom) @@ -443,7 +453,9 @@ Provides: bundled(fdlibm) Provides: bundled(ffvpx) Provides: bundled(freetype2) Provides: bundled(function2) +Provides: bundled(gbm) Provides: bundled(gemmology) +Provides: bundled(googletest) Provides: bundled(graphite2) Provides: bundled(harfbuzz) Provides: bundled(highway) @@ -457,8 +469,10 @@ Provides: bundled(libcubeb) Provides: bundled(libdav1d) Provides: bundled(libdrm) Provides: bundled(libepoxy) +Provides: bundled(libfuzzer) Provides: bundled(libgbm) Provides: bundled(libjpeg) +Provides: bundled(libjxl) Provides: bundled(libmar) Provides: bundled(libmkv) Provides: bundled(libnestegg) @@ -477,7 +491,9 @@ Provides: bundled(libwebp) Provides: bundled(libwebrtc) Provides: bundled(libyuv) Provides: bundled(lit) +Provides: bundled(MotionMark) Provides: bundled(mp4parse-rust) +Provides: bundled(msgpack) Provides: bundled(msgpack-c) Provides: bundled(mtransport) Provides: bundled(nestegg) @@ -485,31 +501,52 @@ Provides: bundled(nICEr) Provides: bundled(nimbus) Provides: bundled(openmax_dl) Provides: bundled(openmax_il) +Provides: bundled(openvr) Provides: bundled(ots) Provides: bundled(pdf.js) +Provides: bundled(pdfjs) +Provides: bundled(perfetto) Provides: bundled(picosha2) Provides: bundled(PKI) +Provides: bundled(PKI.js) +Provides: bundled(puppeteer) +Provides: bundled(pywebsocket3) Provides: bundled(qcms) +Provides: bundled(reader) Provides: bundled(rlbox) Provides: bundled(rlbox_sandboxing_api) Provides: bundled(rlbox_wasm2c_sandbox) +Provides: bundled(schemas) Provides: bundled(sfntly) +Provides: bundled(simde) Provides: bundled(sipcc) Provides: bundled(skia) Provides: bundled(soundtouch) +Provides: bundled(source-map) +Provides: bundled(Speedometer3) Provides: bundled(sqlite3) +Provides: bundled(src) Provides: bundled(thebes) Provides: bundled(theora) Provides: bundled(usrsctp) +Provides: bundled(vendor) +Provides: bundled(vsdownload) Provides: bundled(wabt) Provides: bundled(wasm2c) +Provides: bundled(wasm2c_sandbox_compiler) +Provides: bundled(webaudio) +Provides: bundled(webgl-conf) Provides: bundled(WebRender) Provides: bundled(wgpu) +Provides: bundled(wgpu_bindings) Provides: bundled(woff2) Provides: bundled(xsimd) Provides: bundled(xz-embedded) Provides: bundled(ycbcr) Provides: bundled(zlib) +Provides: bundled(zstd) +Provides: bundled(Zycore) +Provides: bundled(Zydis) %if 0%{?bundle_nss} Provides: bundled(nss) = %{nss_version} @@ -520,68 +557,76 @@ Provides: bundled(nspr) = %{nspr_version} # List obtained by `get_rust_bundled_provides.sh build.log` script:: Provides: bundled(crate(aa-stroke)) = 0.1.0 Provides: bundled(crate(adler)) = 1.0.2 -Provides: bundled(crate(ahash)) = 0.7.6 -Provides: bundled(crate(aho-corasick)) = 0.7.20 -Provides: bundled(crate(alsa)) = 0.7.0 +Provides: bundled(crate(ahash)) = 0.8.11 +Provides: bundled(crate(aho-corasick)) = 1.1.0 +Provides: bundled(crate(alsa)) = 0.8.1 Provides: bundled(crate(alsa-sys)) = 0.3.1 Provides: bundled(crate(anyhow)) = 1.0.69 Provides: bundled(crate(app_services_logger)) = 0.1.0 -Provides: bundled(crate(app_units)) = 0.7.2 +Provides: bundled(crate(app_units)) = 0.7.3 Provides: bundled(crate(arrayref)) = 0.3.6 Provides: bundled(crate(arrayvec)) = 0.7.2 -Provides: bundled(crate(ash)) = 0.37.2+1.3.238 -Provides: bundled(crate(askama)) = 0.11.1 -Provides: bundled(crate(askama_derive)) = 0.11.2 +Provides: bundled(crate(ash)) = 0.38.0+1.3.281 +Provides: bundled(crate(askama)) = 0.12.0 +Provides: bundled(crate(askama_derive)) = 0.12.1 Provides: bundled(crate(askama_escape)) = 0.10.3 -Provides: bundled(crate(askama_shared)) = 0.12.2 Provides: bundled(crate(async-task)) = 4.3.0 -Provides: bundled(crate(async-trait)) = 0.1.64 +Provides: bundled(crate(async-trait)) = 0.1.68 Provides: bundled(crate(atomic_refcell)) = 0.1.9 -Provides: bundled(crate(audioipc2)) = 0.5.0 -Provides: bundled(crate(audioipc2-client)) = 0.5.0 -Provides: bundled(crate(audioipc2-server)) = 0.5.0 -Provides: bundled(crate(audio_thread_priority)) = 0.26.1 -Provides: bundled(crate(authenticator)) = 0.4.0-alpha.15 +Provides: bundled(crate(atty)) = 0.2.14 +Provides: bundled(crate(audioipc2)) = 0.6.0 +Provides: bundled(crate(audioipc2-client)) = 0.6.0 +Provides: bundled(crate(audioipc2-server)) = 0.6.0 +Provides: bundled(crate(audio_thread_priority)) = 0.32.0 +Provides: bundled(crate(authenticator)) = 0.4.0-alpha.24 Provides: bundled(crate(authrs_bridge)) = 0.1.0 Provides: bundled(crate(autocfg)) = 1.1.0 -Provides: bundled(crate(base64)) = 0.13.999 -Provides: bundled(crate(base64)) = 0.21.0 +Provides: bundled(crate(autocfg)) = 1.1.0 +Provides: bundled(crate(base64)) = 0.21.3 +Provides: bundled(crate(basic-toml)) = 0.1.2 Provides: bundled(crate(bhttp)) = 0.3.1 Provides: bundled(crate(binary_http)) = 0.1.0 Provides: bundled(crate(bincode)) = 1.3.3 Provides: bundled(crate(bindgen)) = 0.63.999 -Provides: bundled(crate(bindgen)) = 0.64.0 +Provides: bundled(crate(bindgen)) = 0.69.4 Provides: bundled(crate(bitflags)) = 1.3.2 -Provides: bundled(crate(bitflags)) = 2.999.999 +Provides: bundled(crate(bitflags)) = 1.999.999 +Provides: bundled(crate(bitflags)) = 2.5.0 Provides: bundled(crate(bitreader)) = 0.3.6 Provides: bundled(crate(bit-set)) = 0.5.3 Provides: bundled(crate(bit-vec)) = 0.6.3 Provides: bundled(crate(block-buffer)) = 0.10.3 Provides: bundled(crate(bookmark_sync)) = 0.1.0 +Provides: bundled(crate(buildid_reader)) = 0.1.0 Provides: bundled(crate(build-parallel)) = 0.1.2 Provides: bundled(crate(builtins-static)) = 0.1.0 -Provides: bundled(crate(byteorder)) = 1.4.3 +Provides: bundled(crate(bumpalo)) = 3.15.4 +Provides: bundled(crate(byteorder)) = 1.5.0 Provides: bundled(crate(bytes)) = 1.4.0 Provides: bundled(crate(cache-padded)) = 1.2.0 Provides: bundled(crate(camino)) = 1.1.2 Provides: bundled(crate(cargo_metadata)) = 0.15.3 Provides: bundled(crate(cargo-platform)) = 0.1.2 Provides: bundled(crate(cascade_bloom_filter)) = 0.1.0 -Provides: bundled(crate(cc)) = 1.0.73 +Provides: bundled(crate(cbindgen)) = 0.26.0 +Provides: bundled(crate(cc)) = 1.0.89 Provides: bundled(crate(cert_storage)) = 0.0.1 Provides: bundled(crate(cexpr)) = 0.6.0 -Provides: bundled(crate(cfg-if)) = 0.1.999 +Provides: bundled(crate(cfg_aliases)) = 0.1.1 Provides: bundled(crate(cfg-if)) = 1.0.0 Provides: bundled(crate(chardetng)) = 0.1.9 Provides: bundled(crate(chardetng_c)) = 0.1.2 Provides: bundled(crate(chrono)) = 0.4.19 Provides: bundled(crate(chunky-vec)) = 0.1.0 -Provides: bundled(crate(clang-sys)) = 1.6.0 +Provides: bundled(crate(clang-sys)) = 1.7.0 +Provides: bundled(crate(clap)) = 3.2.25 +Provides: bundled(crate(clap_lex)) = 0.2.4 Provides: bundled(crate(cmake)) = 0.1.999 Provides: bundled(crate(codespan-reporting)) = 0.11.1 +Provides: bundled(crate(core_maths)) = 0.1.0 Provides: bundled(crate(cose)) = 0.1.4 Provides: bundled(crate(cose-c)) = 0.1.5 -Provides: bundled(crate(cpufeatures)) = 0.2.5 +Provides: bundled(crate(cpufeatures)) = 0.2.8 Provides: bundled(crate(crc32fast)) = 1.3.2 Provides: bundled(crate(crossbeam-channel)) = 0.5.6 Provides: bundled(crate(crossbeam-deque)) = 0.8.2 @@ -590,55 +635,65 @@ Provides: bundled(crate(crossbeam-queue)) = 0.3.8 Provides: bundled(crate(crossbeam-utils)) = 0.8.14 Provides: bundled(crate(crypto-common)) = 0.1.6 Provides: bundled(crate(crypto_hash)) = 0.1.0 -Provides: bundled(crate(cssparser)) = 0.31.0 -Provides: bundled(crate(cssparser-macros)) = 0.6.0 +Provides: bundled(crate(cssparser)) = 0.34.0 +Provides: bundled(crate(cssparser-macros)) = 0.6.1 Provides: bundled(crate(cstr)) = 0.2.11 -Provides: bundled(crate(cty)) = 0.2.2 -Provides: bundled(crate(cubeb)) = 0.10.3 -Provides: bundled(crate(cubeb-backend)) = 0.10.3 -Provides: bundled(crate(cubeb-core)) = 0.10.3 -Provides: bundled(crate(cubeb-pulse)) = 0.4.1 -Provides: bundled(crate(cubeb-sys)) = 0.10.3 +Provides: bundled(crate(cubeb)) = 0.13.0 +Provides: bundled(crate(cubeb-backend)) = 0.13.0 +Provides: bundled(crate(cubeb-core)) = 0.13.0 +Provides: bundled(crate(cubeb-pulse)) = 0.5.0 +Provides: bundled(crate(cubeb-sys)) = 0.13.0 Provides: bundled(crate(dap_ffi)) = 0.1.0 -Provides: bundled(crate(darling)) = 0.13.99 -Provides: bundled(crate(darling)) = 0.14.3 -Provides: bundled(crate(darling_core)) = 0.14.3 -Provides: bundled(crate(darling_macro)) = 0.14.3 +Provides: bundled(crate(darling)) = 0.20.1 +Provides: bundled(crate(darling_core)) = 0.20.1 +Provides: bundled(crate(darling_macro)) = 0.20.1 Provides: bundled(crate(data-encoding)) = 2.3.3 Provides: bundled(crate(data-encoding-ffi)) = 0.1.0 +Provides: bundled(crate(data_storage)) = 0.0.1 Provides: bundled(crate(dbus)) = 0.6.5 +Provides: bundled(crate(deranged)) = 0.3.11 Provides: bundled(crate(derive_common)) = 0.0.1 -Provides: bundled(crate(derive_more)) = 0.99.17 +Provides: bundled(crate(derive_more)) = 0.99.999 +Provides: bundled(crate(derive_more)) = 1.0.0-beta.2 +Provides: bundled(crate(derive_more-impl)) = 1.0.0-beta.2 Provides: bundled(crate(digest)) = 0.10.6 +Provides: bundled(crate(diplomat)) = 0.7.0 +Provides: bundled(crate(diplomat_core)) = 0.7.0 +Provides: bundled(crate(diplomat-runtime)) = 0.7.0 Provides: bundled(crate(dirs)) = 4.0.0 Provides: bundled(crate(dirs-sys)) = 0.3.7 -Provides: bundled(crate(displaydoc)) = 0.2.3 +Provides: bundled(crate(displaydoc)) = 0.2.4 Provides: bundled(crate(dns-parser)) = 0.8.0 +Provides: bundled(crate(document-features)) = 0.2.8 Provides: bundled(crate(dogear)) = 0.5.0 Provides: bundled(crate(dom)) = 0.1.0 +Provides: bundled(crate(dom_fragmentdirectives)) = 0.1.0 Provides: bundled(crate(dtoa)) = 0.4.8 Provides: bundled(crate(dtoa-short)) = 0.3.3 Provides: bundled(crate(either)) = 1.8.1 Provides: bundled(crate(encoding_c)) = 0.9.8 Provides: bundled(crate(encoding_c_mem)) = 0.2.6 Provides: bundled(crate(encoding_glue)) = 0.1.0 -Provides: bundled(crate(encoding_rs)) = 0.8.32 -Provides: bundled(crate(enumset)) = 1.0.12 -Provides: bundled(crate(enumset_derive)) = 0.6.1 +Provides: bundled(crate(encoding_rs)) = 0.8.34 +Provides: bundled(crate(enum-map)) = 2.7.3 +Provides: bundled(crate(enum-map-derive)) = 0.17.0 +Provides: bundled(crate(enumset)) = 1.1.2 +Provides: bundled(crate(enumset_derive)) = 0.8.1 Provides: bundled(crate(env_logger)) = 0.10.0 -Provides: bundled(crate(env_logger)) = 0.9.999 +Provides: bundled(crate(equivalent)) = 1.0.1 Provides: bundled(crate(error-chain)) = 0.12.4 Provides: bundled(crate(error-support)) = 0.1.0 Provides: bundled(crate(error-support-macros)) = 0.1.0 Provides: bundled(crate(etagere)) = 0.2.7 -Provides: bundled(crate(euclid)) = 0.22.7 -Provides: bundled(crate(fallible_collections)) = 0.4.6 -Provides: bundled(crate(fallible-iterator)) = 0.2.0 +Provides: bundled(crate(euclid)) = 0.22.10 +Provides: bundled(crate(fallible_collections)) = 0.4.9 +Provides: bundled(crate(fallible-iterator)) = 0.3.0 Provides: bundled(crate(fallible-streaming-iterator)) = 0.1.9 Provides: bundled(crate(fastrand)) = 1.9.0 +Provides: bundled(crate(fastrand)) = 2.0.0 Provides: bundled(crate(ffi-support)) = 0.4.4 Provides: bundled(crate(firefox-on-glean)) = 0.1.0 -Provides: bundled(crate(flate2)) = 1.0.25 +Provides: bundled(crate(flate2)) = 1.0.26 Provides: bundled(crate(fluent)) = 0.16.0 Provides: bundled(crate(fluent-bundle)) = 0.15.2 Provides: bundled(crate(fluent-fallback)) = 0.7.0 @@ -649,64 +704,82 @@ Provides: bundled(crate(fluent-pseudo)) = 0.3.1 Provides: bundled(crate(fluent-syntax)) = 0.11.0 Provides: bundled(crate(fnv)) = 1.0.7 Provides: bundled(crate(fog_control)) = 0.1.0 +Provides: bundled(crate(form_urlencoded)) = 1.2.1 Provides: bundled(crate(freetype)) = 0.7.0 Provides: bundled(crate(fs-err)) = 2.9.0 -Provides: bundled(crate(futures)) = 0.3.26 -Provides: bundled(crate(futures-channel)) = 0.3.26 -Provides: bundled(crate(futures-core)) = 0.3.26 -Provides: bundled(crate(futures-executor)) = 0.3.26 -Provides: bundled(crate(futures-io)) = 0.3.26 -Provides: bundled(crate(futures-macro)) = 0.3.26 -Provides: bundled(crate(futures-sink)) = 0.3.26 -Provides: bundled(crate(futures-task)) = 0.3.26 -Provides: bundled(crate(futures-util)) = 0.3.26 +Provides: bundled(crate(futures)) = 0.3.28 +Provides: bundled(crate(futures-channel)) = 0.3.28 +Provides: bundled(crate(futures-core)) = 0.3.28 +Provides: bundled(crate(futures-executor)) = 0.3.28 +Provides: bundled(crate(futures-io)) = 0.3.28 +Provides: bundled(crate(futures-macro)) = 0.3.28 +Provides: bundled(crate(futures-sink)) = 0.3.28 +Provides: bundled(crate(futures-task)) = 0.3.28 +Provides: bundled(crate(futures-util)) = 0.3.28 Provides: bundled(crate(fxhash)) = 0.2.1 Provides: bundled(crate(gecko_logger)) = 0.1.0 Provides: bundled(crate(gecko-profiler)) = 0.1.0 Provides: bundled(crate(geckoservo)) = 0.0.1 Provides: bundled(crate(generic-array)) = 0.14.6 -Provides: bundled(crate(getrandom)) = 0.2.9 +Provides: bundled(crate(getrandom)) = 0.2.14 Provides: bundled(crate(gkrust)) = 0.1.0 Provides: bundled(crate(gkrust-shared)) = 0.1.0 Provides: bundled(crate(gkrust_utils)) = 0.1.0 Provides: bundled(crate(gleam)) = 0.15.0 -Provides: bundled(crate(glean)) = 52.7.0 -Provides: bundled(crate(glean-core)) = 52.7.0 +Provides: bundled(crate(glean)) = 60.1.1 +Provides: bundled(crate(glean-core)) = 60.1.1 Provides: bundled(crate(gl_generator)) = 0.14.0 Provides: bundled(crate(glob)) = 0.3.1 Provides: bundled(crate(glsl)) = 6.0.2 -Provides: bundled(crate(glslopt)) = 0.1.9 +Provides: bundled(crate(glslopt)) = 0.1.10 Provides: bundled(crate(glsl-to-cxx)) = 0.1.0 -Provides: bundled(crate(goblin)) = 0.6.0 +Provides: bundled(crate(goblin)) = 0.8.1 Provides: bundled(crate(golden_gate)) = 0.1.0 -Provides: bundled(crate(gpu-alloc)) = 0.5.3 -Provides: bundled(crate(gpu-alloc-types)) = 0.2.0 -Provides: bundled(crate(gpu-descriptor)) = 0.2.3 -Provides: bundled(crate(gpu-descriptor-types)) = 0.1.1 +Provides: bundled(crate(gpu-alloc)) = 0.6.0 +Provides: bundled(crate(gpu-alloc-types)) = 0.3.0 +Provides: bundled(crate(gpu-descriptor)) = 0.3.0 +Provides: bundled(crate(gpu-descriptor-types)) = 0.2.0 Provides: bundled(crate(half)) = 1.8.2 Provides: bundled(crate(hashbrown)) = 0.12.3 -Provides: bundled(crate(hashlink)) = 0.8.1 +Provides: bundled(crate(hashbrown)) = 0.13.999 +Provides: bundled(crate(hashbrown)) = 0.14.5 +Provides: bundled(crate(hashlink)) = 0.9.1 Provides: bundled(crate(heck)) = 0.4.1 Provides: bundled(crate(hex)) = 0.4.3 Provides: bundled(crate(hexf-parse)) = 0.2.1 Provides: bundled(crate(http_sfv)) = 0.1.0 +Provides: bundled(crate(icu_capi)) = 1.4.0 +Provides: bundled(crate(icu_collections)) = 1.4.0 +Provides: bundled(crate(icu_locid)) = 1.4.0 +Provides: bundled(crate(icu_locid_transform)) = 1.4.0 +Provides: bundled(crate(icu_locid_transform_data)) = 1.4.0 +Provides: bundled(crate(icu_properties)) = 1.4.0 +Provides: bundled(crate(icu_properties_data)) = 1.4.0 +Provides: bundled(crate(icu_provider)) = 1.4.0 +Provides: bundled(crate(icu_provider_adapters)) = 1.4.0 +Provides: bundled(crate(icu_provider_macros)) = 1.4.0 +Provides: bundled(crate(icu_segmenter)) = 1.4.0 +Provides: bundled(crate(icu_segmenter_data)) = 1.4.0 Provides: bundled(crate(id-arena)) = 2.2.1 Provides: bundled(crate(ident_case)) = 1.0.1 -Provides: bundled(crate(idna)) = 0.2.3 -Provides: bundled(crate(indexmap)) = 1.9.2 -Provides: bundled(crate(inherent)) = 1.0.4 -Provides: bundled(crate(instant)) = 0.1.12 +Provides: bundled(crate(idna)) = 0.5.0 +Provides: bundled(crate(indexmap)) = 1.9.3 +Provides: bundled(crate(indexmap)) = 2.2.6 +Provides: bundled(crate(inherent)) = 1.0.7 Provides: bundled(crate(interrupt-support)) = 0.1.0 Provides: bundled(crate(intl-memoizer)) = 0.5.1 Provides: bundled(crate(intl_pluralrules)) = 7.0.2 +Provides: bundled(crate(io-lifetimes)) = 1.0.10 Provides: bundled(crate(iovec)) = 0.1.4 Provides: bundled(crate(ipcclientcerts-static)) = 0.1.0 Provides: bundled(crate(itertools)) = 0.10.5 Provides: bundled(crate(itoa)) = 1.0.5 +Provides: bundled(crate(itoa)) = 1.0.6 Provides: bundled(crate(jobserver)) = 0.1.25 Provides: bundled(crate(jog)) = 0.1.0 Provides: bundled(crate(jsrust)) = 0.1.0 Provides: bundled(crate(jsrust_shared)) = 0.1.0 +Provides: bundled(crate(keccak)) = 0.1.4 Provides: bundled(crate(khronos_api)) = 3.1.0 Provides: bundled(crate(kvstore)) = 0.1.0 Provides: bundled(crate(l10nregistry)) = 0.3.0 @@ -714,35 +787,45 @@ Provides: bundled(crate(l10nregistry-ffi)) = 0.1.0 Provides: bundled(crate(lazycell)) = 1.3.0 Provides: bundled(crate(lazy_static)) = 1.4.0 Provides: bundled(crate(leb128)) = 0.2.5 -Provides: bundled(crate(libc)) = 0.2.139 +Provides: bundled(crate(libc)) = 0.2.144 +Provides: bundled(crate(libc)) = 0.2.153 Provides: bundled(crate(libdbus-sys)) = 0.2.2 -Provides: bundled(crate(libloading)) = 0.7.4 -Provides: bundled(crate(libsqlite3-sys)) = 0.25.2 +Provides: bundled(crate(libloading)) = 0.8.3 +Provides: bundled(crate(libm)) = 0.2.6 +Provides: bundled(crate(libsqlite3-sys)) = 0.28.0 Provides: bundled(crate(libudev)) = 0.2.0 Provides: bundled(crate(libudev-sys)) = 0.1.3 +Provides: bundled(crate(linux-raw-sys)) = 0.3.7 +Provides: bundled(crate(linux-raw-sys)) = 0.4.12 +Provides: bundled(crate(litemap)) = 0.7.2 +Provides: bundled(crate(litrs)) = 0.4.1 Provides: bundled(crate(lmdb-rkv)) = 0.14.0 Provides: bundled(crate(lmdb-rkv-sys)) = 0.11.2 Provides: bundled(crate(localization-ffi)) = 0.1.0 Provides: bundled(crate(lock_api)) = 0.4.9 Provides: bundled(crate(log)) = 0.4.17 +Provides: bundled(crate(log)) = 0.4.20 Provides: bundled(crate(malloc_size_of)) = 0.0.1 -Provides: bundled(crate(malloc_size_of_derive)) = 0.1.2 +Provides: bundled(crate(malloc_size_of_derive)) = 0.1.3 Provides: bundled(crate(mapped_hyph)) = 0.4.3 Provides: bundled(crate(matches)) = 0.1.10 Provides: bundled(crate(md-5)) = 0.10.5 Provides: bundled(crate(mdns_service)) = 0.1.1 Provides: bundled(crate(memalloc)) = 0.1.0 Provides: bundled(crate(memchr)) = 2.5.0 -Provides: bundled(crate(memmap2)) = 0.5.9 -Provides: bundled(crate(memoffset)) = 0.8.0 +Provides: bundled(crate(memmap2)) = 0.5.999 +Provides: bundled(crate(memmap2)) = 0.8.999 +Provides: bundled(crate(memmap2)) = 0.9.3 +Provides: bundled(crate(memoffset)) = 0.8.999 +Provides: bundled(crate(memoffset)) = 0.9.0 Provides: bundled(crate(midir)) = 0.7.0 Provides: bundled(crate(midir_impl)) = 0.1.0 Provides: bundled(crate(mime)) = 0.3.16 Provides: bundled(crate(mime_guess)) = 2.0.4 Provides: bundled(crate(mime-guess-ffi)) = 0.1.0 Provides: bundled(crate(minimal-lexical)) = 0.2.1 -Provides: bundled(crate(miniz_oxide)) = 0.6.2 -Provides: bundled(crate(mio)) = 0.8.0 +Provides: bundled(crate(miniz_oxide)) = 0.7.1 +Provides: bundled(crate(mio)) = 0.8.8 Provides: bundled(crate(moz_asserts)) = 0.1.0 Provides: bundled(crate(mozbuild)) = 0.1.0 Provides: bundled(crate(moz_cbor)) = 0.1.2 @@ -753,145 +836,175 @@ Provides: bundled(crate(mozurl)) = 0.0.1 Provides: bundled(crate(mp4parse)) = 0.17.0 Provides: bundled(crate(mp4parse_capi)) = 0.17.0 Provides: bundled(crate(murmurhash3)) = 0.0.5 -Provides: bundled(crate(naga)) = 0.12.0 -Provides: bundled(crate(neqo-common)) = 0.6.4 -Provides: bundled(crate(neqo-crypto)) = 0.6.4 +Provides: bundled(crate(naga)) = 0.20.0 +Provides: bundled(crate(neqo-common)) = 0.7.9 +Provides: bundled(crate(neqo-crypto)) = 0.7.9 Provides: bundled(crate(neqo_glue)) = 0.1.0 -Provides: bundled(crate(neqo-http3)) = 0.6.4 -Provides: bundled(crate(neqo-qpack)) = 0.6.4 -Provides: bundled(crate(neqo-transport)) = 0.6.4 +Provides: bundled(crate(neqo-http3)) = 0.7.9 +Provides: bundled(crate(neqo-qpack)) = 0.7.9 +Provides: bundled(crate(neqo-transport)) = 0.7.9 Provides: bundled(crate(netwerk_helper)) = 0.0.1 Provides: bundled(crate(new_debug_unreachable)) = 1.0.4 -Provides: bundled(crate(nix)) = 0.24.99 -Provides: bundled(crate(nix)) = 0.26.2 +Provides: bundled(crate(nix)) = 0.26.99 +Provides: bundled(crate(nix)) = 0.28.0 Provides: bundled(crate(nom)) = 7.1.3 Provides: bundled(crate(nserror)) = 0.1.0 Provides: bundled(crate(nss_build_common)) = 0.1.0 -Provides: bundled(crate(nss-gk-api)) = 0.2.1 +Provides: bundled(crate(nss-gk-api)) = 0.3.0 Provides: bundled(crate(nsstring)) = 0.1.0 +Provides: bundled(crate(num-conv)) = 0.1.0 Provides: bundled(crate(num_cpus)) = 1.15.0 -Provides: bundled(crate(num-derive)) = 0.3.3 +Provides: bundled(crate(num-derive)) = 0.4.2 Provides: bundled(crate(num-integer)) = 0.1.45 Provides: bundled(crate(num-traits)) = 0.2.15 -Provides: bundled(crate(object)) = 0.30.3 +Provides: bundled(crate(object)) = 0.32.0 Provides: bundled(crate(oblivious_http)) = 0.1.0 Provides: bundled(crate(ohttp)) = 0.3.1 -Provides: bundled(crate(once_cell)) = 1.17.1 +Provides: bundled(crate(once_cell)) = 1.19.0 +Provides: bundled(crate(oneshot-uniffi)) = 0.1.6 Provides: bundled(crate(ordered-float)) = 3.4.0 Provides: bundled(crate(origin-trials-ffi)) = 0.1.0 Provides: bundled(crate(origin-trial-token)) = 0.1.1 -Provides: bundled(crate(owning_ref)) = 0.4.1 -Provides: bundled(crate(parking_lot)) = 0.11.2 -Provides: bundled(crate(parking_lot)) = 0.12.999 -Provides: bundled(crate(parking_lot_core)) = 0.8.6 +Provides: bundled(crate(os_str_bytes)) = 6.5.0 +Provides: bundled(crate(oxilangtag)) = 0.1.3 +Provides: bundled(crate(oxilangtag-ffi)) = 0.1.0 +Provides: bundled(crate(parking_lot)) = 0.12.1 +Provides: bundled(crate(parking_lot_core)) = 0.9.9 Provides: bundled(crate(paste)) = 1.0.11 -Provides: bundled(crate(peeking_take_while)) = 0.1.2 Provides: bundled(crate(peek-poke)) = 0.3.0 Provides: bundled(crate(peek-poke-derive)) = 0.3.0 -Provides: bundled(crate(percent-encoding)) = 2.2.0 -Provides: bundled(crate(phf)) = 0.10.1 -Provides: bundled(crate(phf_codegen)) = 0.10.0 -Provides: bundled(crate(phf_generator)) = 0.10.0 -Provides: bundled(crate(phf_macros)) = 0.10.0 -Provides: bundled(crate(phf_shared)) = 0.10.0 +Provides: bundled(crate(percent-encoding)) = 2.3.1 +Provides: bundled(crate(phf)) = 0.11.2 +Provides: bundled(crate(phf_codegen)) = 0.11.2 +Provides: bundled(crate(phf_generator)) = 0.11.2 +Provides: bundled(crate(phf_macros)) = 0.11.2 +Provides: bundled(crate(phf_shared)) = 0.11.2 Provides: bundled(crate(pin-project-lite)) = 0.2.9 Provides: bundled(crate(pin-utils)) = 0.1.0 Provides: bundled(crate(pkcs11-bindings)) = 0.1.5 Provides: bundled(crate(pkg-config)) = 0.3.26 Provides: bundled(crate(plain)) = 0.2.3 Provides: bundled(crate(plane-split)) = 0.18.0 +Provides: bundled(crate(powerfmt)) = 0.2.0 Provides: bundled(crate(ppv-lite86)) = 0.2.17 Provides: bundled(crate(precomputed-hash)) = 0.1.1 Provides: bundled(crate(prefs_parser)) = 0.0.1 -Provides: bundled(crate(prio)) = 0.9.1 +Provides: bundled(crate(prio)) = 0.16.2 Provides: bundled(crate(processtools)) = 0.1.0 -Provides: bundled(crate(proc-macro2)) = 1.0.51 -Provides: bundled(crate(proc-macro-hack)) = 0.5.20+deprecated +Provides: bundled(crate(proc-macro2)) = 1.0.74 +Provides: bundled(crate(proc-macro2)) = 1.0.85 Provides: bundled(crate(profiler_helper)) = 0.1.0 Provides: bundled(crate(profiler-macros)) = 0.1.0 Provides: bundled(crate(profiling)) = 1.0.7 -Provides: bundled(crate(prost)) = 0.8.0 -Provides: bundled(crate(prost-derive)) = 0.8.0 +Provides: bundled(crate(prost)) = 0.12.1 +Provides: bundled(crate(prost-derive)) = 0.12.1 Provides: bundled(crate(pulse)) = 0.3.0 Provides: bundled(crate(pulse-ffi)) = 0.1.0 -Provides: bundled(crate(qcms)) = 0.2.0 -Provides: bundled(crate(qlog)) = 0.4.0 +Provides: bundled(crate(qcms)) = 0.3.0 +Provides: bundled(crate(qlog)) = 0.13.0 Provides: bundled(crate(quick-error)) = 1.2.3 -Provides: bundled(crate(quote)) = 1.0.23 +Provides: bundled(crate(quote)) = 1.0.27 +Provides: bundled(crate(quote)) = 1.0.35 Provides: bundled(crate(rand)) = 0.8.5 Provides: bundled(crate(rand_chacha)) = 0.3.1 Provides: bundled(crate(rand_core)) = 0.6.4 -Provides: bundled(crate(raw-window-handle)) = 0.5.0 +Provides: bundled(crate(raw-window-handle)) = 0.6.0 Provides: bundled(crate(rayon)) = 1.6.1 -Provides: bundled(crate(rayon-core)) = 1.10.2 -Provides: bundled(crate(regex)) = 1.7.1 -Provides: bundled(crate(regex-syntax)) = 0.6.28 +Provides: bundled(crate(rayon-core)) = 1.12.0 +Provides: bundled(crate(regex)) = 1.9.4 +Provides: bundled(crate(regex-automata)) = 0.3.7 +Provides: bundled(crate(regex-syntax)) = 0.7.5 +Provides: bundled(crate(relevancy)) = 0.1.0 +Provides: bundled(crate(remote_settings)) = 0.1.0 Provides: bundled(crate(remove_dir_all)) = 0.5.3 Provides: bundled(crate(replace_with)) = 0.1.7 Provides: bundled(crate(ringbuf)) = 0.2.8 -Provides: bundled(crate(rkv)) = 0.18.4 -Provides: bundled(crate(ron)) = 0.8.0 +Provides: bundled(crate(rkv)) = 0.19.0 +Provides: bundled(crate(ron)) = 0.8.1 Provides: bundled(crate(rsclientcerts)) = 0.1.0 Provides: bundled(crate(rsdparsa_capi)) = 0.1.0 Provides: bundled(crate(runloop)) = 0.1.0 Provides: bundled(crate(rure)) = 0.2.2 -Provides: bundled(crate(rusqlite)) = 0.28.0 +Provides: bundled(crate(rusqlite)) = 0.31.0 Provides: bundled(crate(rust_cascade)) = 1.5.0 Provides: bundled(crate(rustc-demangle)) = 0.1.21 Provides: bundled(crate(rustc-hash)) = 1.1.0 Provides: bundled(crate(rustc_version)) = 0.4.0 Provides: bundled(crate(rust_decimal)) = 1.28.1 +Provides: bundled(crate(rustix)) = 0.37.19 +Provides: bundled(crate(rustix)) = 0.38.28 Provides: bundled(crate(ryu)) = 1.0.12 +Provides: bundled(crate(ryu)) = 1.0.13 Provides: bundled(crate(same-file)) = 1.0.6 Provides: bundled(crate(scopeguard)) = 1.1.0 -Provides: bundled(crate(scroll)) = 0.11.0 -Provides: bundled(crate(scroll_derive)) = 0.11.0 +Provides: bundled(crate(scroll)) = 0.12.0 +Provides: bundled(crate(scroll_derive)) = 0.12.0 Provides: bundled(crate(selectors)) = 0.22.0 Provides: bundled(crate(self_cell)) = 0.10.2 Provides: bundled(crate(semver)) = 1.0.16 -Provides: bundled(crate(serde)) = 1.0.152 +Provides: bundled(crate(serde)) = 1.0.163 +Provides: bundled(crate(serde)) = 1.0.203 Provides: bundled(crate(serde_bytes)) = 0.11.9 Provides: bundled(crate(serde_cbor)) = 0.11.2 -Provides: bundled(crate(serde_derive)) = 1.0.152 -Provides: bundled(crate(serde_json)) = 1.0.93 -Provides: bundled(crate(serde_with)) = 1.14.0 -Provides: bundled(crate(serde_with_macros)) = 1.5.2 +Provides: bundled(crate(serde_derive)) = 1.0.163 +Provides: bundled(crate(serde_derive)) = 1.0.203 +Provides: bundled(crate(serde_json)) = 1.0.116 +Provides: bundled(crate(serde_json)) = 1.0.96 +Provides: bundled(crate(serde_path_to_error)) = 0.1.11 +Provides: bundled(crate(serde_with)) = 3.0.0 +Provides: bundled(crate(serde_with_macros)) = 3.0.0 Provides: bundled(crate(servo_arc)) = 0.1.1 -Provides: bundled(crate(sfv)) = 0.9.3 +Provides: bundled(crate(sfv)) = 0.9.4 Provides: bundled(crate(sha1)) = 0.10.5 Provides: bundled(crate(sha2)) = 0.10.6 +Provides: bundled(crate(sha3)) = 0.10.8 Provides: bundled(crate(shlex)) = 1.1.0 Provides: bundled(crate(siphasher)) = 0.3.10 Provides: bundled(crate(slab)) = 0.4.8 Provides: bundled(crate(smallbitvec)) = 2.5.1 -Provides: bundled(crate(smallvec)) = 1.10.0 -Provides: bundled(crate(socket2)) = 0.4.7 -Provides: bundled(crate(spirv)) = 0.2.0+1.5.4 +Provides: bundled(crate(smallvec)) = 1.13.1 +Provides: bundled(crate(smawk)) = 0.3.2 +Provides: bundled(crate(socket2)) = 0.4.999 +Provides: bundled(crate(socket2)) = 0.5.7 +Provides: bundled(crate(spirv)) = 0.3.0+sdk-1.3.268.0 Provides: bundled(crate(sql-support)) = 0.1.0 Provides: bundled(crate(stable_deref_trait)) = 1.2.0 Provides: bundled(crate(static_assertions)) = 1.1.0 Provides: bundled(crate(static_prefs)) = 0.1.0 Provides: bundled(crate(storage)) = 0.1.0 Provides: bundled(crate(storage_variant)) = 0.1.0 +Provides: bundled(crate(strck)) = 0.1.2 +Provides: bundled(crate(strck_ident)) = 0.1.2 Provides: bundled(crate(strsim)) = 0.10.0 Provides: bundled(crate(style)) = 0.0.1 Provides: bundled(crate(style_derive)) = 0.0.1 Provides: bundled(crate(style_traits)) = 0.0.1 +Provides: bundled(crate(subtle)) = 2.5.0 +Provides: bundled(crate(suggest)) = 0.1.0 Provides: bundled(crate(svg_fmt)) = 0.4.1 Provides: bundled(crate(swgl)) = 0.1.0 -Provides: bundled(crate(syn)) = 1.0.107 +Provides: bundled(crate(syn)) = 1.0.109 +Provides: bundled(crate(syn)) = 2.0.16 +Provides: bundled(crate(syn)) = 2.0.46 Provides: bundled(crate(sync15)) = 0.1.0 Provides: bundled(crate(sync-guid)) = 0.1.0 -Provides: bundled(crate(synstructure)) = 0.12.6 +Provides: bundled(crate(synstructure)) = 0.13.1 Provides: bundled(crate(tabs)) = 0.1.0 -Provides: bundled(crate(tempfile)) = 3.3.0 +Provides: bundled(crate(tempfile)) = 3.5.0 +Provides: bundled(crate(tempfile)) = 3.9.0 Provides: bundled(crate(termcolor)) = 1.2.0 +Provides: bundled(crate(termcolor)) = 1.4.1 +Provides: bundled(crate(textwrap)) = 0.16.0 +Provides: bundled(crate(textwrap)) = 0.16.1 Provides: bundled(crate(thin-vec)) = 0.2.12 -Provides: bundled(crate(thiserror)) = 1.0.38 -Provides: bundled(crate(thiserror-impl)) = 1.0.38 +Provides: bundled(crate(thiserror)) = 1.0.61 +Provides: bundled(crate(thiserror-impl)) = 1.0.61 Provides: bundled(crate(threadbound)) = 0.1.5 Provides: bundled(crate(time)) = 0.1.45 -Provides: bundled(crate(tinystr)) = 0.7.1 +Provides: bundled(crate(time)) = 0.3.36 +Provides: bundled(crate(time-core)) = 0.1.2 +Provides: bundled(crate(time-macros)) = 0.2.18 +Provides: bundled(crate(tinystr)) = 0.7.4 Provides: bundled(crate(tinyvec)) = 1.999.999 Provides: bundled(crate(toml)) = 0.5.11 Provides: bundled(crate(topological-sort)) = 0.1.0 @@ -901,55 +1014,68 @@ Provides: bundled(crate(tracy-rs)) = 0.1.2 Provides: bundled(crate(typed-arena-nomut)) = 0.1.0 Provides: bundled(crate(type-map)) = 0.4.0 Provides: bundled(crate(typenum)) = 1.16.0 +Provides: bundled(crate(types)) = 0.1.0 Provides: bundled(crate(uluru)) = 3.0.0 Provides: bundled(crate(unicase)) = 2.6.0 -Provides: bundled(crate(unic-langid)) = 0.9.1 +Provides: bundled(crate(unic-langid)) = 0.9.5 Provides: bundled(crate(unic-langid-ffi)) = 0.1.0 -Provides: bundled(crate(unic-langid-impl)) = 0.9.1 -Provides: bundled(crate(unicode-bidi)) = 0.3.8 +Provides: bundled(crate(unic-langid-impl)) = 0.9.5 +Provides: bundled(crate(unicode-bidi)) = 0.3.15 +Provides: bundled(crate(unicode-bidi-ffi)) = 0.1.0 Provides: bundled(crate(unicode-ident)) = 1.0.6 +Provides: bundled(crate(unicode-ident)) = 1.0.8 +Provides: bundled(crate(unicode-linebreak)) = 0.1.5 Provides: bundled(crate(unicode-normalization)) = 0.1.22 -Provides: bundled(crate(unicode-segmentation)) = 1.10.0 Provides: bundled(crate(unicode-width)) = 0.1.10 Provides: bundled(crate(unicode-xid)) = 0.2.4 -Provides: bundled(crate(uniffi)) = 0.23.0 -Provides: bundled(crate(uniffi_bindgen)) = 0.23.0 -Provides: bundled(crate(uniffi_build)) = 0.23.0 -Provides: bundled(crate(uniffi_checksum_derive)) = 0.23.0 -Provides: bundled(crate(uniffi_core)) = 0.23.0 -Provides: bundled(crate(uniffi_macros)) = 0.23.0 -Provides: bundled(crate(uniffi_meta)) = 0.23.0 -Provides: bundled(crate(uniffi_testing)) = 0.23.0 -Provides: bundled(crate(url)) = 2.1.0 +Provides: bundled(crate(uniffi)) = 0.27.1 +Provides: bundled(crate(uniffi_bindgen)) = 0.27.1 +Provides: bundled(crate(uniffi_build)) = 0.27.1 +Provides: bundled(crate(uniffi_checksum_derive)) = 0.27.1 +Provides: bundled(crate(uniffi_core)) = 0.27.1 +Provides: bundled(crate(uniffi_macros)) = 0.27.1 +Provides: bundled(crate(uniffi_meta)) = 0.27.1 +Provides: bundled(crate(uniffi_testing)) = 0.27.1 +Provides: bundled(crate(uniffi_udl)) = 0.27.1 +Provides: bundled(crate(url)) = 2.5.0 +Provides: bundled(crate(utf8_iter)) = 1.0.3 Provides: bundled(crate(uuid)) = 1.3.0 Provides: bundled(crate(vcpkg)) = 0.2.999 Provides: bundled(crate(version_check)) = 0.9.4 Provides: bundled(crate(viaduct)) = 0.1.0 Provides: bundled(crate(void)) = 1.0.2 Provides: bundled(crate(walkdir)) = 2.3.2 -Provides: bundled(crate(wasm-encoder)) = 0.25.0 -Provides: bundled(crate(wast)) = 56.0.0 +Provides: bundled(crate(wasm-encoder)) = 0.205.0 +Provides: bundled(crate(wast)) = 205.0.0 Provides: bundled(crate(webext-storage)) = 0.1.0 Provides: bundled(crate(webext_storage_bridge)) = 0.1.0 Provides: bundled(crate(webrender)) = 0.62.0 Provides: bundled(crate(webrender_api)) = 0.62.0 Provides: bundled(crate(webrender_bindings)) = 0.1.0 Provides: bundled(crate(webrender_build)) = 0.0.2 -Provides: bundled(crate(webrtc-sdp)) = 0.3.10 -Provides: bundled(crate(weedle2)) = 4.0.0 +Provides: bundled(crate(webrtc-sdp)) = 0.3.11 +Provides: bundled(crate(weedle2)) = 5.0.0 Provides: bundled(crate(wgpu_bindings)) = 0.1.0 -Provides: bundled(crate(wgpu-core)) = 0.16.0 -Provides: bundled(crate(wgpu-hal)) = 0.16.0 -Provides: bundled(crate(wgpu-types)) = 0.16.0 +Provides: bundled(crate(wgpu-core)) = 0.20.0 +Provides: bundled(crate(wgpu-hal)) = 0.20.0 +Provides: bundled(crate(wgpu-types)) = 0.20.0 Provides: bundled(crate(whatsys)) = 0.3.1 Provides: bundled(crate(wpf-gpu-raster)) = 0.1.0 Provides: bundled(crate(wr_glyph_rasterizer)) = 0.1.0 +Provides: bundled(crate(writeable)) = 0.5.4 Provides: bundled(crate(wr_malloc_size_of)) = 0.0.2 Provides: bundled(crate(xmldecl)) = 0.2.0 Provides: bundled(crate(xml-rs)) = 0.8.4 Provides: bundled(crate(xpcom)) = 0.1.0 Provides: bundled(crate(xpcom_macros)) = 0.1.0 +Provides: bundled(crate(yoke)) = 0.7.3 +Provides: bundled(crate(yoke-derive)) = 0.7.3 Provides: bundled(crate(zeitstempel)) = 0.1.1 +Provides: bundled(crate(zerocopy)) = 0.7.32 +Provides: bundled(crate(zerofrom)) = 0.1.2 +Provides: bundled(crate(zerofrom-derive)) = 0.1.3 +Provides: bundled(crate(zerovec)) = 0.10.1 +Provides: bundled(crate(zerovec-derive)) = 0.10.1 %description Mozilla Firefox is an open-source web browser, designed for standards @@ -988,12 +1114,11 @@ echo "dist %{?dist}" echo "RHEL minor version: %{?rhel_minor_version}" echo "bundle_nss %{?bundle_nss}" echo "system_nss %{?system_nss}" -echo "use_rust_ts %{?use_rust_ts}" echo "use_dts %{?use_dts}" echo "use_nodejs_scl %{?use_nodejs_scl}" -echo "use_llvm_ts %{?use_llvm_ts}" echo "use_python3_scl %{?use_python3_scl}" echo "--------------------------------------------" +#clang -print-search-dirs %setup -q -n %{name}-%{version} # ---- RHEL specific patches --- @@ -1003,6 +1128,8 @@ echo "--------------------------------------------" %patch -P3 -p1 -b .build-big-endian-errors %if 0%{?rhel} == 7 %patch -P5 -p1 -b .build-rhel7-lower-node-min-version +# Disable gamepad due to old kernel +%patch -P11 -p1 -b .gamepad %ifarch ppc64 # abiv2 version not available in RHEL7 ppc # TODO most likely not needed with system nss @@ -1017,10 +1144,10 @@ echo "--------------------------------------------" %patch -P8 -p1 -b .disable-pipewire %endif %patch -P9 -p1 -b .rhbz-2131158-webrtc-nss-fix +%patch -P10 -p1 -b .build-ffvpx # -- Upstreamed patches -- %patch -P51 -p1 -b .mozilla-bmo1170092 -%patch -P52 -p1 -b .bindgen-clang18 # -- Submitted upstream, not merged -- %patch -P101 -p1 -b .mozilla-bmo1636168-fscreen @@ -1032,24 +1159,18 @@ echo "--------------------------------------------" %patch -P107 -p1 -b .mozilla-bmo1716707-swizzle %patch -P108 -p1 -b .mozilla-bmo1716707-svg %patch -P109 -p1 -b .mozilla-bmo1789216-disable-av1 +%patch -P110 -p1 -b .libaom # ---- Fedora specific patches ---- %patch -P151 -p1 -b .addons %patch -P152 -p1 -b .rhbz-1173156 -%patch -P153 -p1 -b .fedora-shebang %patch -P154 -p1 -b .addons-nss-hack # ARM run-time patch %ifarch aarch64 %patch -P155 -p1 -b .rhbz-1354671 %endif -# ---- Test patches ---- -%patch -P201 -p1 -b .firefox-tests-xpcshell-freeze - # ---- Security patches ---- -cd media/libvpx/libvpx -%patch -P301 -p1 -b .CVE-2023-44488-libvpx -cd - %{__rm} -f .mozconfig %{__cp} %{SOURCE10} .mozconfig @@ -1126,10 +1247,8 @@ echo "ac_add_options --with-google-safebrowsing-api-keyfile=`pwd`/google-api-key # May result in empty --with-libclang-path= in earlier versions. # So far this is needed only for c8s/c9s. -%if (0%{?rhel} == 8 && %{rhel_minor_version} >= 10) || (0%{?rhel} == 9 && %{rhel_minor_version} >= 4) # Clang 17 upstream's detection fails, tell it where to look. echo "ac_add_options --with-libclang-path=`llvm-config --libdir`" >> .mozconfig -%endif echo 'export NODEJS="%{_buildrootdir}/bin/node-stdout-nonblocking-wrapper"' >> .mozconfig @@ -1166,11 +1285,13 @@ function install_rpms_to_current_dir() { for package in $(ls $PACKAGE_DIR/$PACKAGE_RPM) do echo "$package" - rpm2cpio "$package" | cpio -idu + rpm2cpio "$package" | cpio -ivdu done } %if 0%{?bundle_nss} +%if 0%{?rhel} == 8 + # nspr rpm -ivh %{SOURCE402} rpmbuild --nodeps --define '_prefix %{bundled_install_path}' --without=tests -ba %{_specdir}/nspr.spec pushd %{_buildrootdir} @@ -1180,24 +1301,20 @@ function install_rpms_to_current_dir() { echo "Setting nspr flags" # nss-setup-flags-env.inc sed -i 's@%{bundled_install_path}@%{_buildrootdir}%{bundled_install_path}@g' %{_buildrootdir}%{bundled_install_path}/%{_lib}/pkgconfig/nspr*.pc - cat %{_buildrootdir}%{bundled_install_path}/%{_lib}/pkgconfig/nspr*.pc export LDFLAGS="-L%{_buildrootdir}%{bundled_install_path}/%{_lib} $LDFLAGS" export LDFLAGS="-Wl,-rpath,%{bundled_install_path}/%{_lib} $LDFLAGS" export LDFLAGS="-Wl,-rpath-link,%{_buildrootdir}%{bundled_install_path}/%{_lib} $LDFLAGS" export PKG_CONFIG_PATH=%{_buildrootdir}%{bundled_install_path}/%{_lib}/pkgconfig - pkg-config --libs-only-L nspr - pkg-config --libs nspr export PATH="%{_buildrootdir}%{bundled_install_path}/bin:$PATH" export PATH=%{_buildrootdir}/%{bundled_install_path}/bin:$PATH - echo $PKG_CONFIG_PATH - -%if 0%{?rhel} == 8 rpm -ivh %{SOURCE403} + %else rpm -ivh %{SOURCE404} %endif + # nss rpmbuild --nodeps --define '_prefix %{bundled_install_path}' --without=tests -ba %{_specdir}/nss.spec pushd %{_buildrootdir} #cleanup @@ -1210,6 +1327,12 @@ function install_rpms_to_current_dir() { install_rpms_to_current_dir nss-softokn-freebl-devel*.rpm install_rpms_to_current_dir nss-util-3*.rpm install_rpms_to_current_dir nss-util-devel*.rpm +%if 0%{?rhel} > 8 + + install_rpms_to_current_dir nspr-4*.rpm + install_rpms_to_current_dir nspr-devel*.rpm + sed -i 's@%{bundled_install_path}@%{_buildrootdir}%{bundled_install_path}@g' %{_buildrootdir}%{bundled_install_path}/%{_lib}/pkgconfig/nspr*.pc +%endif popd %filter_provides_in %{bundled_install_path}/%{_lib} %filter_requires_in %{bundled_install_path}/%{_lib} @@ -1218,28 +1341,25 @@ function install_rpms_to_current_dir() { %filter_from_requires /libssl3.so.*/d %filter_from_requires /libnssutil3.so.*/d %filter_from_requires /libnspr4.so.*/d - find %{_buildrootdir} + + export LDFLAGS="-L%{_buildrootdir}%{bundled_install_path}/%{_lib} $LDFLAGS" + export LDFLAGS="-Wl,-rpath,%{bundled_install_path}/%{_lib} $LDFLAGS" + export LDFLAGS="-Wl,-rpath-link,%{_buildrootdir}%{bundled_install_path}/%{_lib} $LDFLAGS" + export PKG_CONFIG_PATH=%{_buildrootdir}%{bundled_install_path}/%{_lib}/pkgconfig + export PATH="%{_buildrootdir}%{bundled_install_path}/bin:$PATH" %endif # Enable toolsets set +e -%if 0%{?rhel} == 8 && %{rhel_minor_version} < 6 - %ifarch aarch64 -source scl_source enable gcc-toolset-12 - %endif +%if 0%{?use_gcc_ts} +source scl_source enable gcc-toolset-13 %endif %if 0%{?use_dts} source scl_source enable devtoolset-%{dts_version} %endif -%if 0%{?use_rust_ts} -source scl_source enable rust-toolset-%{rust_version} -%endif %if 0%{?use_nodejs_scl} source scl_source enable rh-nodejs10 %endif -%if 0%{?use_llvm_ts} -source scl_source enable llvm-toolset-%{llvm_version} -%endif %if 0%{?use_python3_scl} source scl_source enable rh-python38 %endif @@ -1283,22 +1403,14 @@ cp %{SOURCE32} %{_buildrootdir}/bin || : # 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 {} ';' -MOZ_OPT_FLAGS=$(echo "%{optflags}" | %{__sed} -e 's/-Wall//') +MOZ_OPT_FLAGS=$(echo "%{optflags}" | %{__sed} -e 's/-Wall//' | %{__sed} -e 's/-fexceptions//' ) #rhbz#1037063 # -Werror=format-security causes build failures when -Wno-format is explicitly given # for some sources # Explicitly force the hardening flags for Firefox so it passes the checksec test; # See also https://fedoraproject.org/wiki/Changes/Harden_All_Packages -%if 0%{?fedora} < 30 -MOZ_OPT_FLAGS="$MOZ_OPT_FLAGS -Wformat-security -Wformat -Werror=format-security" -%else # Workaround for mozbz#1531309 MOZ_OPT_FLAGS=$(echo "$MOZ_OPT_FLAGS" | %{__sed} -e 's/-Werror=format-security//') -%endif - -%if 0%{?fedora} > 30 -MOZ_OPT_FLAGS="$MOZ_OPT_FLAGS -fpermissive" -%endif MOZ_OPT_FLAGS="$MOZ_OPT_FLAGS -fPIC -Wl,-z,relro -Wl,-z,now" %if %{?debug_build} @@ -1403,7 +1515,7 @@ function install_rpms_to_current_dir() { for package in $(ls $PACKAGE_DIR/$PACKAGE_RPM) do echo "$package" - rpm2cpio "$package" | cpio -idu + rpm2cpio "$package" | cpio -ivdu done } @@ -1570,7 +1682,7 @@ ln -s %{mozappdir}/defaults/preferences $RPM_BUILD_ROOT/%{mozappdir}/browser/def sed -i -e 's|%PREFIX%|%{_prefix}|' %{buildroot}%{mozappdir}/defaults/preferences/all-redhat.js sed -i -e 's|%HOMEPAGE%|%{homepage}|' %{buildroot}%{mozappdir}/defaults/preferences/all-redhat.js # Enable modern crypto for the key export on the RHEL9 only (rhbz#1764205) -%if 0%{?rhel} == 9 +%if 0%{?rhel} >= 9 echo 'pref("security.pki.use_modern_crypto_with_pkcs12", true);' >> %{buildroot}%{mozappdir}/defaults/preferences/all-redhat.js %endif @@ -1604,13 +1716,17 @@ ln -s %{_datadir}/myspell %{buildroot}%{mozappdir}/dictionaries %{__cp} failures-* %{buildroot}/%{version}-%{release}/ || true %endif -# Copy over run-mozilla.sh -%{__cp} build/unix/run-mozilla.sh %{buildroot}%{mozappdir} - # Add distribution.ini %{__mkdir_p} %{buildroot}%{mozappdir}/distribution %{__cp} %{SOURCE26} %{buildroot}%{mozappdir}/distribution +# CentOS +%if 0%{?centos} +%{__sed} -i -e 's/redhat/centos/g' %{buildroot}%{mozappdir}/distribution/distribution.ini +(source /etc/os-release; %{__sed} -i -e 's/Red Hat Enterprise Linux/$NAME/' %{buildroot}%{mozappdir}/distribution/distribution.ini) +cat %{buildroot}%{mozappdir}/distribution/distribution.ini +%endif + # Install appdata file mkdir -p %{buildroot}%{_datadir}/metainfo %{__sed} -e "s/__VERSION__/%{version}/" \ @@ -1698,7 +1814,6 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : %dir %{langpackdir} %endif %{mozappdir}/browser/omni.ja -%{mozappdir}/run-mozilla.sh %{mozappdir}/application.ini %{mozappdir}/pingsender %exclude %{mozappdir}/removed-files @@ -1719,11 +1834,13 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : %{mozappdir}/dictionaries %{mozappdir}/omni.ja %{mozappdir}/platform.ini -%{mozappdir}/plugin-container %{mozappdir}/gmp-clearkey %{mozappdir}/fonts/TwemojiMozilla.ttf %{mozappdir}/glxtest %{mozappdir}/vaapitest +%ifarch aarch64 +%{mozappdir}/v4l2test +%endif %if !%{?system_nss} %exclude %{mozappdir}/libnssckbi.so @@ -1743,26 +1860,11 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : #--------------------------------------------------------------------- %changelog -* Thu Aug 01 2024 Eike Rathke - 115.14.0-2 -- Update to 115.14.0 build2 +* Tue Sep 24 2024 Jan Horak - 128.3.0-1 +- Update to 128.3.0 -* Tue Jul 30 2024 Eike Rathke - 115.14.0-1 -- Update to 115.14.0 build1 - -* Mon Jul 08 2024 Tomas Popela - 115.13.0-3 -- Update to 115.13.0 build3 - -* Tue Jul 02 2024 Eike Rathke - 115.13.0-2 -- Update to 115.13.0 build2 - -* Mon Jul 01 2024 Eike Rathke - 115.13.0-1 -- Update to 115.13.0 build1 - -* Tue Jun 04 2024 Eike Rathke - 115.12.0-1 -- Update to 115.12.0 build1 - -* Tue May 07 2024 Eike Rathke - 115.11.0-1 -- Update to 115.11.0 build1 +* Tue Aug 27 2024 Jan Horak - 128.2.0-1 +- Update to 128.2.0 * Tue Apr 09 2024 Eike Rathke - 115.10.0-1 - Update to 115.10.0 build1 diff --git a/gen_cbindgen-vendor.sh b/gen_cbindgen-vendor.sh index c2b60f0..4e8aded 100755 --- a/gen_cbindgen-vendor.sh +++ b/gen_cbindgen-vendor.sh @@ -12,7 +12,7 @@ to be used with 'cargo vendor' commmand. """ [dependencies] -cbindgen = "0.24.3" +cbindgen = "0.26.0" [[bin]] name = "dummy" diff --git a/mozilla-bmo1504834-part1.patch b/mozilla-bmo1504834-part1.patch index 5246c5a..f117b89 100644 --- a/mozilla-bmo1504834-part1.patch +++ b/mozilla-bmo1504834-part1.patch @@ -1,6 +1,6 @@ -diff -up firefox-115.2.0/gfx/2d/DrawTargetSkia.cpp.mozilla-bmo1504834-part1 firefox-115.2.0/gfx/2d/DrawTargetSkia.cpp ---- firefox-115.2.0/gfx/2d/DrawTargetSkia.cpp.mozilla-bmo1504834-part1 2023-09-20 22:15:11.850172571 +0200 -+++ firefox-115.2.0/gfx/2d/DrawTargetSkia.cpp 2023-09-20 22:16:10.446147737 +0200 +diff -up firefox-128.0/gfx/2d/DrawTargetSkia.cpp.mozilla-bmo1504834-part1 firefox-128.0/gfx/2d/DrawTargetSkia.cpp +--- firefox-128.0/gfx/2d/DrawTargetSkia.cpp.mozilla-bmo1504834-part1 2024-06-12 15:02:55.000000000 +0200 ++++ firefox-128.0/gfx/2d/DrawTargetSkia.cpp 2024-06-13 11:36:54.550728034 +0200 @@ -156,8 +156,8 @@ static IntRect CalculateSurfaceBounds(co } @@ -12,9 +12,9 @@ diff -up firefox-115.2.0/gfx/2d/DrawTargetSkia.cpp.mozilla-bmo1504834-part1 fire static bool VerifyRGBXFormat(uint8_t* aData, const IntSize& aSize, const int32_t aStride, SurfaceFormat aFormat) { if (aFormat != SurfaceFormat::B8G8R8X8 || aSize.IsEmpty()) { -diff -up firefox-115.2.0/gfx/2d/Types.h.mozilla-bmo1504834-part1 firefox-115.2.0/gfx/2d/Types.h ---- firefox-115.2.0/gfx/2d/Types.h.mozilla-bmo1504834-part1 2023-08-21 15:43:23.000000000 +0200 -+++ firefox-115.2.0/gfx/2d/Types.h 2023-09-20 22:15:11.850172571 +0200 +diff -up firefox-128.0/gfx/2d/Types.h.mozilla-bmo1504834-part1 firefox-128.0/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 { // This represents the unknown format. UNKNOWN, // TODO: Replace uses with Maybe. @@ -37,10 +37,10 @@ diff -up firefox-115.2.0/gfx/2d/Types.h.mozilla-bmo1504834-part1 firefox-115.2.0 // The following values are OS and endian-independent synonyms. // -diff -up firefox-115.2.0/gfx/skia/skia/modules/skcms/skcms.cc.mozilla-bmo1504834-part1 firefox-115.2.0/gfx/skia/skia/modules/skcms/skcms.cc ---- firefox-115.2.0/gfx/skia/skia/modules/skcms/skcms.cc.mozilla-bmo1504834-part1 2023-08-21 15:43:23.000000000 +0200 -+++ firefox-115.2.0/gfx/skia/skia/modules/skcms/skcms.cc 2023-09-20 22:15:11.851172570 +0200 -@@ -30,6 +30,8 @@ +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 +--- firefox-128.0/gfx/skia/skia/modules/skcms/skcms.cc.mozilla-bmo1504834-part1 2024-06-12 15:02:57.000000000 +0200 ++++ firefox-128.0/gfx/skia/skia/modules/skcms/skcms.cc 2024-06-13 11:38:45.377835856 +0200 +@@ -31,6 +31,8 @@ #include #include #endif @@ -48,7 +48,7 @@ diff -up firefox-115.2.0/gfx/skia/skia/modules/skcms/skcms.cc.mozilla-bmo1504834 + #define SKCMS_PORTABLE #endif - static bool runtime_cpu_detection = true; + using namespace skcms_private; @@ -324,20 +326,28 @@ enum { static uint16_t read_big_u16(const uint8_t* ptr) { uint16_t be; diff --git a/mozilla-bmo1636168-fscreen.patch b/mozilla-bmo1636168-fscreen.patch index e8bb310..6ee70ad 100644 --- a/mozilla-bmo1636168-fscreen.patch +++ b/mozilla-bmo1636168-fscreen.patch @@ -1,15 +1,7 @@ -diff -up firefox-114.0/widget/gtk/nsWindow.cpp.D110204-fscreen.diff firefox-114.0/widget/gtk/nsWindow.cpp ---- firefox-114.0/widget/gtk/nsWindow.cpp.D110204-fscreen.diff 2023-05-17 10:43:02.000000000 +0200 -+++ firefox-114.0/widget/gtk/nsWindow.cpp 2023-05-17 13:53:54.000443278 +0200 -@@ -100,6 +100,7 @@ - #include "ScreenHelperGTK.h" - #include "SystemTimeConverter.h" - #include "WidgetUtilsGtk.h" -+#include "nsIBrowserHandler.h" - - #ifdef ACCESSIBILITY - # include "mozilla/a11y/LocalAccessible.h" -@@ -173,7 +174,8 @@ const gint kEvents = GDK_TOUCHPAD_GESTUR +diff -up firefox-128.0/widget/gtk/nsWindow.cpp.mozilla-bmo1636168-fscreen firefox-128.0/widget/gtk/nsWindow.cpp +--- firefox-128.0/widget/gtk/nsWindow.cpp.mozilla-bmo1636168-fscreen 2024-07-04 18:20:43.000000000 +0200 ++++ firefox-128.0/widget/gtk/nsWindow.cpp 2024-07-16 14:54:21.026716936 +0200 +@@ -174,7 +174,8 @@ const gint kEvents = GDK_TOUCHPAD_GESTUR GDK_ENTER_NOTIFY_MASK | GDK_LEAVE_NOTIFY_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_SMOOTH_SCROLL_MASK | GDK_TOUCH_MASK | GDK_SCROLL_MASK | @@ -19,7 +11,7 @@ diff -up firefox-114.0/widget/gtk/nsWindow.cpp.D110204-fscreen.diff firefox-114. /* utility functions */ static bool is_mouse_in_window(GdkWindow* aWindow, gdouble aMouseX, -@@ -433,7 +435,8 @@ nsWindow::nsWindow() +@@ -430,7 +431,8 @@ nsWindow::nsWindow() mResizedAfterMoveToRect(false), mConfiguredClearColor(false), mGotNonBlankPaint(false), @@ -29,7 +21,7 @@ diff -up firefox-114.0/widget/gtk/nsWindow.cpp.D110204-fscreen.diff firefox-114. mWindowType = WindowType::Child; mSizeConstraints.mMaxSize = GetSafeWindowSize(mSizeConstraints.mMaxSize); -@@ -5263,6 +5266,19 @@ void nsWindow::OnWindowStateEvent(GtkWid +@@ -5374,6 +5376,19 @@ void nsWindow::OnWindowStateEvent(GtkWid ClearTransparencyBitmap(); } } @@ -49,30 +41,18 @@ diff -up firefox-114.0/widget/gtk/nsWindow.cpp.D110204-fscreen.diff firefox-114. } void nsWindow::OnDPIChanged() { -@@ -7409,6 +7425,19 @@ nsresult nsWindow::MakeFullScreen(bool a - } - } +@@ -7526,6 +7541,7 @@ nsresult nsWindow::MakeFullScreen(bool a -+ // if in kiosk, ensure the fullscreen is called -+ nsCOMPtr browserHandler = -+ do_GetService("@mozilla.org/browser/clh;1"); -+ if (browserHandler) { -+ bool isKiosk; -+ browserHandler->GetKiosk(&isKiosk); -+ if (isKiosk) { -+ LOG(" is kiosk, ensure the window switch to fullscreen\n"); -+ mPendingFullscreen = true; -+ } -+ } else { -+ LOG(" Cannot find the browserHandler service.\n"); -+ } - gtk_window_fullscreen(GTK_WINDOW(mShell)); - } else { - gtk_window_unfullscreen(GTK_WINDOW(mShell)); -diff -up firefox-114.0/widget/gtk/nsWindow.h.D110204-fscreen.diff firefox-114.0/widget/gtk/nsWindow.h ---- firefox-114.0/widget/gtk/nsWindow.h.D110204-fscreen.diff 2023-05-17 08:46:16.000000000 +0200 -+++ firefox-114.0/widget/gtk/nsWindow.h 2023-05-17 13:51:29.502159247 +0200 -@@ -752,6 +752,7 @@ class nsWindow final : public nsBaseWidg + if (mKioskMonitor.isSome()) { + KioskLockOnMonitor(); ++ mPendingFullscreen = true; + } else { + gtk_window_fullscreen(GTK_WINDOW(mShell)); + } +diff -up firefox-128.0/widget/gtk/nsWindow.h.mozilla-bmo1636168-fscreen firefox-128.0/widget/gtk/nsWindow.h +--- firefox-128.0/widget/gtk/nsWindow.h.mozilla-bmo1636168-fscreen 2024-07-04 18:20:43.000000000 +0200 ++++ firefox-128.0/widget/gtk/nsWindow.h 2024-07-16 14:25:51.636952919 +0200 +@@ -758,6 +758,7 @@ class nsWindow final : public nsBaseWidg * move-to-rect callback we set mMovedAfterMoveToRect/mResizedAfterMoveToRect. */ bool mWaitingForMoveToRectCallback : 1; diff --git a/mozilla-bmo1670333.patch b/mozilla-bmo1670333.patch index 7126d43..4d29f5d 100644 --- a/mozilla-bmo1670333.patch +++ b/mozilla-bmo1670333.patch @@ -1,7 +1,7 @@ -diff -up firefox-115.0/dom/media/mp4/MP4Demuxer.cpp.1670333 firefox-115.0/dom/media/mp4/MP4Demuxer.cpp ---- firefox-115.0/dom/media/mp4/MP4Demuxer.cpp.1670333 2023-06-06 23:14:43.000000000 +0200 -+++ firefox-115.0/dom/media/mp4/MP4Demuxer.cpp 2023-06-08 08:15:48.214109403 +0200 -@@ -32,6 +32,8 @@ mozilla::LogModule* GetDemuxerLog() { re +diff -up firefox-128.0/dom/media/mp4/MP4Demuxer.cpp.mozilla-bmo1670333 firefox-128.0/dom/media/mp4/MP4Demuxer.cpp +--- firefox-128.0/dom/media/mp4/MP4Demuxer.cpp.mozilla-bmo1670333 2024-07-04 18:20:27.000000000 +0200 ++++ firefox-128.0/dom/media/mp4/MP4Demuxer.cpp 2024-07-16 13:49:10.475630426 +0200 +@@ -33,6 +33,8 @@ mozilla::LogModule* GetDemuxerLog() { re DDMOZ_LOG(gMediaDemuxerLog, mozilla::LogLevel::Debug, "::%s: " arg, \ __func__, ##__VA_ARGS__) @@ -10,7 +10,7 @@ diff -up firefox-115.0/dom/media/mp4/MP4Demuxer.cpp.1670333 firefox-115.0/dom/me namespace mozilla { using TimeUnit = media::TimeUnit; -@@ -404,6 +406,12 @@ already_AddRefed MP4TrackD +@@ -419,6 +421,12 @@ already_AddRefed MP4TrackD [[fallthrough]]; case H264::FrameType::OTHER: { bool keyframe = type == H264::FrameType::I_FRAME; @@ -23,10 +23,10 @@ diff -up firefox-115.0/dom/media/mp4/MP4Demuxer.cpp.1670333 firefox-115.0/dom/me if (sample->mKeyframe != keyframe) { NS_WARNING(nsPrintfCString("Frame incorrectly marked as %skeyframe " "@ pts:%" PRId64 " dur:%" PRId64 -diff -up firefox-115.0/dom/media/platforms/PDMFactory.cpp.1670333 firefox-115.0/dom/media/platforms/PDMFactory.cpp ---- firefox-115.0/dom/media/platforms/PDMFactory.cpp.1670333 2023-06-06 23:14:44.000000000 +0200 -+++ firefox-115.0/dom/media/platforms/PDMFactory.cpp 2023-06-08 08:09:33.145289602 +0200 -@@ -67,6 +67,8 @@ +diff -up firefox-128.0/dom/media/platforms/PDMFactory.cpp.mozilla-bmo1670333 firefox-128.0/dom/media/platforms/PDMFactory.cpp +--- firefox-128.0/dom/media/platforms/PDMFactory.cpp.mozilla-bmo1670333 2024-07-04 18:20:26.000000000 +0200 ++++ firefox-128.0/dom/media/platforms/PDMFactory.cpp 2024-07-16 14:16:04.635809901 +0200 +@@ -62,6 +62,8 @@ #include @@ -35,31 +35,28 @@ diff -up firefox-115.0/dom/media/platforms/PDMFactory.cpp.1670333 firefox-115.0/ using DecodeSupport = mozilla::media::DecodeSupport; using DecodeSupportSet = mozilla::media::DecodeSupportSet; using MediaCodec = mozilla::media::MediaCodec; -@@ -562,7 +564,7 @@ void PDMFactory::CreateRddPDMs() { +@@ -543,7 +545,7 @@ void PDMFactory::CreateRddPDMs() { #ifdef MOZ_FFMPEG if (StaticPrefs::media_ffmpeg_enabled() && StaticPrefs::media_rdd_ffmpeg_enabled() && -- !CreateAndStartupPDM()) { -+ !(mFFmpegUsed = CreateAndStartupPDM())) { +- !StartupPDM(FFmpegRuntimeLinker::CreateDecoder())) { ++ !(mFFmpegUsed = StartupPDM(FFmpegRuntimeLinker::CreateDecoder()))) { mFailureFlags += GetFailureFlagBasedOnFFmpegStatus( FFmpegRuntimeLinker::LinkStatusCode()); } -@@ -738,9 +740,10 @@ void PDMFactory::CreateDefaultPDMs() { - - CreateAndStartupPDM(); +@@ -719,7 +721,7 @@ void PDMFactory::CreateDefaultPDMs() { + StartupPDM(AgnosticDecoderModule::Create(), + StaticPrefs::media_prefer_non_ffvpx()); - if (StaticPrefs::media_gmp_decoder_enabled() && + if (StaticPrefs::media_gmp_decoder_enabled() && !mFFmpegUsed && !StartupPDM(GMPDecoderModule::Create(), StaticPrefs::media_gmp_decoder_preferred())) { -+ gUseKeyframeFromContainer = true; mFailureFlags += DecoderDoctorDiagnostics::Flags::GMPPDMFailedToStartup; - } - } -diff -up firefox-115.0/dom/media/platforms/PDMFactory.h.1670333 firefox-115.0/dom/media/platforms/PDMFactory.h ---- firefox-115.0/dom/media/platforms/PDMFactory.h.1670333 2023-06-06 23:14:42.000000000 +0200 -+++ firefox-115.0/dom/media/platforms/PDMFactory.h 2023-06-08 08:09:33.145289602 +0200 -@@ -103,6 +103,7 @@ class PDMFactory final { +diff -up firefox-128.0/dom/media/platforms/PDMFactory.h.mozilla-bmo1670333 firefox-128.0/dom/media/platforms/PDMFactory.h +--- firefox-128.0/dom/media/platforms/PDMFactory.h.mozilla-bmo1670333 2024-07-04 18:20:26.000000000 +0200 ++++ firefox-128.0/dom/media/platforms/PDMFactory.h 2024-07-16 13:49:10.476630421 +0200 +@@ -98,6 +98,7 @@ class PDMFactory final { RefPtr mNullPDM; DecoderDoctorDiagnostics::FlagsSet mFailureFlags; diff --git a/mozilla-bmo1789216-disable-av1.patch b/mozilla-bmo1789216-disable-av1.patch index ce91a12..c7fe0c3 100644 --- a/mozilla-bmo1789216-disable-av1.patch +++ b/mozilla-bmo1789216-disable-av1.patch @@ -1,9 +1,7 @@ -diff --git a/media/ffvpx/libavcodec/allcodecs.c b/media/ffvpx/libavcodec/allcodecs.c ---- a/media/ffvpx/libavcodec/allcodecs.c -+++ b/media/ffvpx/libavcodec/allcodecs.c -@@ -755,12 +755,15 @@ - extern FFCodec ff_libaom_av1_encoder; - extern const FFCodec ff_libaribb24_decoder; +diff -up firefox-128.0/media/ffvpx/libavcodec/allcodecs.c.mozilla-bmo1789216-disable-av1 firefox-128.0/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 ++++ firefox-128.0/media/ffvpx/libavcodec/allcodecs.c 2024-06-13 11:44:10.637215674 +0200 +@@ -764,8 +764,11 @@ extern const FFCodec ff_libaribb24_decod extern const FFCodec ff_libcelt_decoder; extern const FFCodec ff_libcodec2_encoder; 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_decoder; extern const FFCodec ff_libgsm_encoder; - extern const FFCodec ff_libgsm_decoder; - extern const FFCodec ff_libgsm_ms_encoder; -@@ -783,11 +786,10 @@ - extern const FFCodec ff_libspeex_encoder; - extern const FFCodec ff_libspeex_decoder; +@@ -793,7 +796,6 @@ extern const FFCodec ff_libspeex_decoder extern const FFCodec ff_libsvtav1_encoder; extern const FFCodec ff_libtheora_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_libvorbis_encoder; extern const FFCodec ff_libvorbis_decoder; - extern const FFCodec ff_libvpx_vp8_encoder; - extern const FFCodec ff_libvpx_vp8_decoder; -diff --git a/media/ffvpx/libavcodec/codec_list.c b/media/ffvpx/libavcodec/codec_list.c ---- a/media/ffvpx/libavcodec/codec_list.c -+++ b/media/ffvpx/libavcodec/codec_list.c -@@ -9,12 +9,14 @@ - &ff_flac_decoder, - #endif +diff -up firefox-128.0/media/ffvpx/libavcodec/codec_list.c.mozilla-bmo1789216-disable-av1 firefox-128.0/media/ffvpx/libavcodec/codec_list.c +--- firefox-128.0/media/ffvpx/libavcodec/codec_list.c.mozilla-bmo1789216-disable-av1 2024-06-13 11:40:12.668924117 +0200 ++++ firefox-128.0/media/ffvpx/libavcodec/codec_list.c 2024-06-13 11:44:41.411253372 +0200 +@@ -11,12 +11,14 @@ static const FFCodec * const codec_list[ #if CONFIG_MP3_DECODER &ff_mp3_decoder, #endif @@ -45,26 +35,22 @@ diff --git a/media/ffvpx/libavcodec/codec_list.c b/media/ffvpx/libavcodec/codec_ #if CONFIG_AV1_DECODER &ff_av1_decoder, #endif -+#endif - NULL }; -diff --git a/media/ffvpx/libavcodec/moz.build b/media/ffvpx/libavcodec/moz.build ---- a/media/ffvpx/libavcodec/moz.build -+++ b/media/ffvpx/libavcodec/moz.build -@@ -84,11 +84,10 @@ - 'cbs.c', - 'cbs_av1.c', - 'golomb.c', - 'h264pred.c', ++#endif + #if CONFIG_LIBVORBIS_DECODER + &ff_libvorbis_decoder, + #endif +diff -up firefox-128.0/media/ffvpx/libavcodec/moz.build.mozilla-bmo1789216-disable-av1 firefox-128.0/media/ffvpx/libavcodec/moz.build +--- firefox-128.0/media/ffvpx/libavcodec/moz.build.mozilla-bmo1789216-disable-av1 2024-06-13 11:40:12.669924118 +0200 ++++ firefox-128.0/media/ffvpx/libavcodec/moz.build 2024-06-13 11:45:22.867304151 +0200 +@@ -94,7 +94,6 @@ if not CONFIG['MOZ_FFVPX_AUDIOONLY']: 'imgconvert.c', + 'libaom.c', + 'libaomenc.c', - 'libdav1d.c', + 'libvpxdec.c', + 'libvpxenc.c', 'mathtables.c', - 'qsv_api.c', - 'raw.c', - 'videodsp.c', - 'vp8.c', -@@ -107,14 +106,19 @@ - 'vp9mvs.c', - 'vp9prob.c', +@@ -119,10 +118,16 @@ if not CONFIG['MOZ_FFVPX_AUDIOONLY']: 'vp9recon.c', 'vpx_rac.c', ] @@ -81,9 +67,7 @@ diff --git a/media/ffvpx/libavcodec/moz.build b/media/ffvpx/libavcodec/moz.build + 'libdav1d.c', + ] + - if CONFIG['MOZ_WAYLAND']: ++ + if CONFIG["MOZ_WIDGET_TOOLKIT"] == "gtk": LOCAL_INCLUDES += ['/media/mozva'] SOURCES += [ - 'vaapi_av1.c', - 'vaapi_decode.c', - diff --git a/nss-setup-flags-env.inc b/nss-setup-flags-env.inc index 45f6e79..334bfaa 100644 --- a/nss-setup-flags-env.inc +++ b/nss-setup-flags-env.inc @@ -4,4 +4,4 @@ export LDFLAGS="-L%{_buildrootdir}%{bundled_install_path}/%{_lib} $LDFLAGS" export LDFLAGS="-Wl,-rpath,%{bundled_install_path}/%{_lib} $LDFLAGS" export LDFLAGS="-Wl,-rpath-link,%{_buildrootdir}%{bundled_install_path}/%{_lib} $LDFLAGS" export PKG_CONFIG_PATH=%{_buildrootdir}%{bundled_install_path}/%{_lib}/pkgconfig -export PATH="{_buildrootdir}%{bundled_install_path}/bin:$PATH" +export PATH="%{_buildrootdir}%{bundled_install_path}/bin:$PATH" diff --git a/process-official-tarball b/process-official-tarball index 449e7bb..e3aabb9 100755 --- a/process-official-tarball +++ b/process-official-tarball @@ -12,6 +12,11 @@ rm -vf ./process-tarball-dir/*/testing/web-platform/tests/css/css-ui/support/cur rm -vf ./process-tarball-dir/*/testing/web-platform/tests/conformance-checkers/html-rdfa/0230-novalid.html rm -vf ./process-tarball-dir/*/testing/web-platform/tests/conformance-checkers/html-rdfa/0231-isvalid.html rm -vf ./process-tarball-dir/*/layout/inspector/tests/chrome/test_fontVariationsAPI.css +# A forbidden code point was found in: +rm -vf ./process-tarball-dir/*/mobile/android/android-components/components/browser/errorpages/src/main/res/values-ar/strings.xml +rm -vf ./process-tarball-dir/*/mobile/android/android-components/components/feature/addons/src/main/res/values-ur/strings.xml +rm -vf ./process-tarball-dir/*/third_party/webkit/PerformanceTests/Speedometer3/resources/editors/dist/assets/codemirror-521de7ab.js +rm -vf ./process-tarball-dir/*/third_party/python/pip/pip-24.0.dist-info/AUTHORS.txt processed_tarball=${1/source/processed-source} diff --git a/process-official-tarball-firefox b/process-official-tarball-firefox new file mode 100755 index 0000000..e3aabb9 --- /dev/null +++ b/process-official-tarball-firefox @@ -0,0 +1,28 @@ +#!/bin/sh + +rm -rf ./process-tarball-dir +mkdir ./process-tarball-dir +tar -xJf $1 --directory process-tarball-dir + +rm -vf ./process-tarball-dir/*/testing/web-platform/tests/conformance-checkers/html-rdfa/0030-isvalid.html +rm -vf ./process-tarball-dir/*/testing/web-platform/tests/conformance-checkers/html-rdfa/0008-isvalid.html +rm -vf ./process-tarball-dir/*/testing/web-platform/tests/conformance-checkers/html-rdfalite/0030-isvalid.html +rm -vf ./process-tarball-dir/*/testing/web-platform/tests/css/css-ui/support/cursors/woolly-64.svg +rm -vf ./process-tarball-dir/*/testing/web-platform/tests/css/css-ui/support/cursors/woolly.svg +rm -vf ./process-tarball-dir/*/testing/web-platform/tests/conformance-checkers/html-rdfa/0230-novalid.html +rm -vf ./process-tarball-dir/*/testing/web-platform/tests/conformance-checkers/html-rdfa/0231-isvalid.html +rm -vf ./process-tarball-dir/*/layout/inspector/tests/chrome/test_fontVariationsAPI.css +# A forbidden code point was found in: +rm -vf ./process-tarball-dir/*/mobile/android/android-components/components/browser/errorpages/src/main/res/values-ar/strings.xml +rm -vf ./process-tarball-dir/*/mobile/android/android-components/components/feature/addons/src/main/res/values-ur/strings.xml +rm -vf ./process-tarball-dir/*/third_party/webkit/PerformanceTests/Speedometer3/resources/editors/dist/assets/codemirror-521de7ab.js +rm -vf ./process-tarball-dir/*/third_party/python/pip/pip-24.0.dist-info/AUTHORS.txt + +processed_tarball=${1/source/processed-source} + +cd ./process-tarball-dir +tar -cf - ./* | xz -9 -T 0 -f > $processed_tarball +mv $processed_tarball .. +cd .. + +rm -rf ./process-tarball-dir diff --git a/sources b/sources index fee4659..fa3c5ea 100644 --- a/sources +++ b/sources @@ -1,7 +1,7 @@ +SHA512 (nss-3.101.0-7.el8_2.src.rpm) = c25551b06cf9239bb54aaf3edaea2c60804b449de4e06af4f5192bc181b5c6468ea8a69ddeff9de1b11bfc123e894b1ce8fc5d6deddfd5062f8736b75db56f8d +SHA512 (nss-3.101.0-7.el9_2.src.rpm) = 7c325e0e437c1266031af02b3a026d20b789548ae435be6c39d710aa9d19c967ac0a79097fd50dd8ab878bf0d72c19e937d54863aa8cd0654ef2ef288e3102ec +SHA512 (firefox-128.3.0esr.processed-source.tar.xz) = 852d5294da0b60984c337d1f8e6e101713be1014458cf9df21e6da2ea92fc2cd8560ddc1b9dd1db1b09e83843b645d3f6baabfc676adde619a8619f35fc478ad +SHA512 (firefox-langpacks-128.3.0esr-20240924.tar.xz) = 1d2316d534b354146d70a811ff4eb3afd56c5188143795789acf6918300ebbd46db9a42e2a2ed9390b589336648fe753ed9bfb5d9e30804316f304fbf2ecacfa +SHA512 (cbindgen-vendor.tar.xz) = 0c7a40033ccd38dadd30ad064feef390444af4562be07d3dfd0c4cccc55821b01b5228ddee367d0af3bd1b4ef9b1552cdd104506579b020ac1940a7c536b8b68 SHA512 (nspr-4.35.0-1.el8_1.src.rpm) = 5123a443fcc42602e31104999be339ae899eb7b1f1e2f1ea87ba4f283eb894d08ab568e421dba1df4770f23be91ff88aa6a0748bce7feef31ed88bee5bdecb2c -SHA512 (cbindgen-vendor.tar.xz) = 161811f4adfc74e5d92871c78139704d32e1e1ad6b615c85353de300d9647a68f1ca8b1c953f7cc5539d861e9e8d8e42892cae757a3eafea78804e19bc323c16 -SHA512 (nss-3.90.0-3.el8_1.src.rpm) = 81df24bd4eda4935888170e994834f4510c20fa51079631527b195b723d8f536ec4144d4a2e5d45768aeec7c426d50d70d0a294577d18233acc07c49c8af5130 SHA512 (mochitest-python.tar.gz) = 089b1593068b76f4572af0086eaccf52a6a1299bfffb58593206d19bf021ae381f2380bbfeb4371586cd53706ff6dde3d240238b2caf19b96c57dfc2f4524e36 -SHA512 (nss-3.90.0-3.el9_0.src.rpm) = f321b9c1bda0b09eee564e2903023435851a4ff2e55bdd5b03012ca51be7999b18d85061f874065d0b25913721eb574f49746a3111f8f1cdd5b21268dddd8367 -SHA512 (firefox-115.14.0esr.b2.processed-source.tar.xz) = 3fe5e9fa32dcd0ca40c22c830f04d0f74d44d5fad093852fca6274af7e22c416a0b3d9a3d01274d621d7b03b45394cd220b96dc07a1affbbeb1df7a4ea07ac81 -SHA512 (firefox-langpacks-115.14.0esr-20240801.tar.xz) = 75007db5efefd45917808de08111101bc15ab6c4d63105faff54a9e16de7c74d11d754e9f1437867b34f0dea28985a41710e18d8f62325678d439afc37bcd282