diff --git a/.gitignore b/.gitignore index f7f1e8c..82558d2 100644 --- a/.gitignore +++ b/.gitignore @@ -619,3 +619,5 @@ firefox-3.6.4.source.tar.bz2 /firefox-langpacks-122.0-20240119.tar.xz /firefox-langpacks-122.0.1-20240213.tar.xz /firefox-122.0.1.source.tar.xz +/firefox-langpacks-123.0-20240219.tar.xz +/firefox-123.0.source.tar.xz diff --git a/D167159.diff b/D167159.diff deleted file mode 100644 index a9261b0..0000000 --- a/D167159.diff +++ /dev/null @@ -1,132 +0,0 @@ -diff --git a/dom/canvas/ClientWebGLContext.cpp b/dom/canvas/ClientWebGLContext.cpp ---- a/dom/canvas/ClientWebGLContext.cpp -+++ b/dom/canvas/ClientWebGLContext.cpp -@@ -4253,11 +4253,12 @@ - const auto& sd = *(desc->sd); - const auto sdType = sd.type(); - const auto& contextInfo = mNotLost->info; - - const auto fallbackReason = [&]() -> Maybe { -- auto fallbackReason = BlitPreventReason(level, offset, pi, *desc); -+ auto fallbackReason = -+ BlitPreventReason(level, offset, pi, *desc, Limits()); - if (fallbackReason) return fallbackReason; - - const bool canUploadViaSd = contextInfo.uploadableSdTypes[sdType]; - if (!canUploadViaSd) { - const nsPrintfCString msg( -diff --git a/dom/canvas/TexUnpackBlob.h b/dom/canvas/TexUnpackBlob.h ---- a/dom/canvas/TexUnpackBlob.h -+++ b/dom/canvas/TexUnpackBlob.h -@@ -41,11 +41,12 @@ - struct PackingInfo; - struct DriverUnpackInfo; - - Maybe BlitPreventReason(int32_t level, const ivec3& offset, - const webgl::PackingInfo&, -- const TexUnpackBlobDesc&); -+ const TexUnpackBlobDesc&, -+ const Limits& limits); - - class TexUnpackBlob { - public: - const TexUnpackBlobDesc& mDesc; - bool mNeedsExactUpload = true; -diff --git a/dom/canvas/TexUnpackBlob.cpp b/dom/canvas/TexUnpackBlob.cpp ---- a/dom/canvas/TexUnpackBlob.cpp -+++ b/dom/canvas/TexUnpackBlob.cpp -@@ -658,11 +658,12 @@ - return ValidateUnpackPixels(webgl, pi, fullRows, *this); - } - - Maybe BlitPreventReason(const int32_t level, const ivec3& offset, - const webgl::PackingInfo& pi, -- const TexUnpackBlobDesc& desc) { -+ const TexUnpackBlobDesc& desc, -+ const Limits& limits) { - const auto& size = desc.size; - const auto& unpacking = desc.unpacking; - - const auto ret = [&]() -> const char* { - if (size.z != 1) { -@@ -689,12 +690,16 @@ - return "UNPACK_PREMULTIPLY_ALPHA_WEBGL is not false"; - } - }(); - if (premultReason) return premultReason; - -- if (pi.format != LOCAL_GL_RGBA) { -- return "`format` is not RGBA"; -+ if (pi.format != LOCAL_GL_RGBA && pi.format != LOCAL_GL_RGB) { -+ return "`format` is not RGBA or RGB"; -+ } -+ -+ if (pi.format == LOCAL_GL_RGB && !limits.rgbColorRenderable) { -+ return "`format` is RGB, which is not color-renderable"; - } - - if (pi.type != LOCAL_GL_UNSIGNED_BYTE) { - return "`type` is not UNSIGNED_BYTE"; - } -@@ -722,12 +727,12 @@ - - const auto& gl = webgl->GL(); - - // - - -- const auto reason = -- BlitPreventReason(level, {xOffset, yOffset, zOffset}, pi, mDesc); -+ const auto reason = BlitPreventReason(level, {xOffset, yOffset, zOffset}, pi, -+ mDesc, tex->mContext->Limits()); - if (reason) { - webgl->GeneratePerfWarning( - "Failed to hit GPU-copy fast-path." - " (%s) Falling back to CPU upload.", - reason->c_str()); -diff --git a/dom/canvas/WebGLContextValidate.cpp b/dom/canvas/WebGLContextValidate.cpp ---- a/dom/canvas/WebGLContextValidate.cpp -+++ b/dom/canvas/WebGLContextValidate.cpp -@@ -239,10 +239,12 @@ - [WebGLExtensionID::WEBGL_compressed_texture_astc]) { - limits.astcHdr = gl.IsExtensionSupported( - gl::GLContext::KHR_texture_compression_astc_hdr); - } - -+ limits.rgbColorRenderable = webgl.gl->IsRGBColorRenderable(); -+ - if (webgl.IsWebGL2() || - limits.supportedExtensions[WebGLExtensionID::WEBGL_draw_buffers]) { - gl.GetUIntegerv(LOCAL_GL_MAX_DRAW_BUFFERS, &limits.maxColorDrawBuffers); - } - -diff --git a/dom/canvas/WebGLTypes.h b/dom/canvas/WebGLTypes.h ---- a/dom/canvas/WebGLTypes.h -+++ b/dom/canvas/WebGLTypes.h -@@ -663,10 +663,11 @@ - uint32_t maxUniformBufferBindings = 0; - uint32_t uniformBufferOffsetAlignment = 0; - - // Exts - bool astcHdr = false; -+ bool rgbColorRenderable = false; - uint32_t maxColorDrawBuffers = 1; - uint64_t queryCounterBitsTimeElapsed = 0; - uint64_t queryCounterBitsTimestamp = 0; - uint32_t maxMultiviewLayers = 0; - }; -diff --git a/gfx/gl/GLContext.h b/gfx/gl/GLContext.h ---- a/gfx/gl/GLContext.h -+++ b/gfx/gl/GLContext.h -@@ -290,10 +290,11 @@ - mTopError = GetError(); - return IsContextLost(); - } - - bool HasPBOState() const { return (!IsGLES() || Version() >= 300); } -+ bool IsRGBColorRenderable() { return !IsGLES() || Version() >= 300; } - - /** - * If this context is double-buffered, returns TRUE. - */ - virtual bool IsDoubleBuffered() const { return false; } - diff --git a/firefox.spec b/firefox.spec index c3d12a2..7e46fa8 100644 --- a/firefox.spec +++ b/firefox.spec @@ -178,13 +178,13 @@ ExcludeArch: i686 Summary: Mozilla Firefox Web browser Name: firefox -Version: 122.0.1 +Version: 123.0 Release: 1%{?pre_tag}%{?dist} URL: https://www.mozilla.org/firefox/ License: MPLv1.1 or GPLv2+ or LGPLv2+ Source0: https://archive.mozilla.org/pub/firefox/releases/%{version}%{?pre_version}/source/firefox-%{version}%{?pre_version}.source.tar.xz %if %{with langpacks} -Source1: firefox-langpacks-%{version}%{?pre_version}-20240213.tar.xz +Source1: firefox-langpacks-%{version}%{?pre_version}-20240219.tar.xz %endif Source2: cbindgen-vendor.tar.xz Source3: dump_syms-vendor.tar.xz @@ -258,11 +258,7 @@ Patch242: 0026-Add-KDE-integration-to-Firefox.patch # Upstream patches Patch402: mozilla-1196777.patch Patch407: mozilla-1667096.patch -Patch408: D167159.diff -# Firefox 123 patches for PipeWire camera support -# https://phabricator.services.mozilla.com/D200147 -Patch420: libwebrtc-fix-serialization-of-cameraaccessstatus-enum.patch # Firefox 124 patches for PipeWire camera support # https://phabricator.services.mozilla.com/D200142 Patch421: libwebrtc-allow-videocapturemodulepipewire-be-shared-with-more-consumers.patch @@ -571,9 +567,7 @@ This package contains results of tests executed during build. %patch402 -p1 -b .1196777 %patch407 -p1 -b .1667096 -%patch408 -p1 -b .D167159 -%patch420 -p1 -b .libwebrtc-fix-serialization-of-cameraaccessstatus-enum %patch421 -p1 -b .libwebrtc-allow-videocapturemodulepipewire-be-shared-with-more-consumers %patch422 -p1 -b .libwebrtc-simplify-thread-and-lock-annotations @@ -1199,6 +1193,9 @@ fi #--------------------------------------------------------------------- %changelog +* Mon Feb 19 2024 Martin Stransky - 123.0-1 +- Update to 123.0 + * Tue Feb 13 2024 Martin Stransky - 122.0.1-1 - Update to 122.0.1 diff --git a/libwebrtc-fix-serialization-of-cameraaccessstatus-enum.patch b/libwebrtc-fix-serialization-of-cameraaccessstatus-enum.patch deleted file mode 100644 index 7334caa..0000000 --- a/libwebrtc-fix-serialization-of-cameraaccessstatus-enum.patch +++ /dev/null @@ -1,17 +0,0 @@ -diff --git a/dom/media/systemservices/CamerasTypes.h b/dom/media/systemservices/CamerasTypes.h ---- a/dom/media/systemservices/CamerasTypes.h -+++ b/dom/media/systemservices/CamerasTypes.h -@@ -50,11 +50,11 @@ - mozilla::camera::CaptureEngine::InvalidEngine, - mozilla::camera::CaptureEngine::MaxEngine> {}; - - template <> - struct ParamTraits -- : public ContiguousEnumSerializer< -+ : public ContiguousEnumSerializerInclusive< - mozilla::camera::CamerasAccessStatus, - mozilla::camera::CamerasAccessStatus::Granted, - mozilla::camera::CamerasAccessStatus::Error> {}; - } // namespace IPC - - diff --git a/pgo.patch b/pgo.patch index b99616f..5a092bf 100644 --- a/pgo.patch +++ b/pgo.patch @@ -1,7 +1,7 @@ -diff -up firefox-122.0/build/moz.configure/lto-pgo.configure.pgo firefox-122.0/build/moz.configure/lto-pgo.configure ---- firefox-122.0/build/moz.configure/lto-pgo.configure.pgo 2024-01-18 21:41:19.000000000 +0100 -+++ firefox-122.0/build/moz.configure/lto-pgo.configure 2024-01-19 18:21:17.974681504 +0100 -@@ -86,7 +86,7 @@ def pgo_flags(compiler, profdata, target +diff -up firefox-123.0/build/moz.configure/lto-pgo.configure.pgo firefox-123.0/build/moz.configure/lto-pgo.configure +--- firefox-123.0/build/moz.configure/lto-pgo.configure.pgo 2024-02-14 08:18:40.000000000 +0100 ++++ firefox-123.0/build/moz.configure/lto-pgo.configure 2024-02-19 10:51:40.900650193 +0100 +@@ -130,7 +130,7 @@ def pgo_flags(compiler, linker, profdata return namespace( gen_cflags=["-fprofile-generate"], gen_ldflags=["-fprofile-generate"], @@ -10,9 +10,9 @@ diff -up firefox-122.0/build/moz.configure/lto-pgo.configure.pgo firefox-122.0/b use_ldflags=["-fprofile-use"], ) -diff -up firefox-122.0/build/pgo/profileserver.py.pgo firefox-122.0/build/pgo/profileserver.py ---- firefox-122.0/build/pgo/profileserver.py.pgo 2024-01-18 21:41:20.000000000 +0100 -+++ firefox-122.0/build/pgo/profileserver.py 2024-01-19 18:21:17.974681504 +0100 +diff -up firefox-123.0/build/pgo/profileserver.py.pgo firefox-123.0/build/pgo/profileserver.py +--- firefox-123.0/build/pgo/profileserver.py.pgo 2024-02-14 08:18:40.000000000 +0100 ++++ firefox-123.0/build/pgo/profileserver.py 2024-02-19 10:51:40.900650193 +0100 @@ -11,7 +11,7 @@ import subprocess import sys @@ -48,10 +48,10 @@ diff -up firefox-122.0/build/pgo/profileserver.py.pgo firefox-122.0/build/pgo/pr with TemporaryDirectory() as profilePath: # TODO: refactor this into mozprofile -diff -up firefox-122.0/gfx/2d/moz.build.pgo firefox-122.0/gfx/2d/moz.build ---- firefox-122.0/gfx/2d/moz.build.pgo 2024-01-18 21:41:22.000000000 +0100 -+++ firefox-122.0/gfx/2d/moz.build 2024-01-19 18:21:17.974681504 +0100 -@@ -137,11 +137,11 @@ if CONFIG["INTEL_ARCHITECTURE"]: +diff -up firefox-123.0/gfx/2d/moz.build.pgo firefox-123.0/gfx/2d/moz.build +--- firefox-123.0/gfx/2d/moz.build.pgo 2024-02-19 10:51:40.900650193 +0100 ++++ firefox-123.0/gfx/2d/moz.build 2024-02-19 10:57:34.770832810 +0100 +@@ -134,11 +134,11 @@ if CONFIG["INTEL_ARCHITECTURE"]: # The file uses SSE2 intrinsics, so it needs special compile flags on some # compilers. SOURCES["BlurSSE2.cpp"].flags += CONFIG["SSE2_FLAGS"] @@ -64,10 +64,10 @@ diff -up firefox-122.0/gfx/2d/moz.build.pgo firefox-122.0/gfx/2d/moz.build + SOURCES["SwizzleAVX2.cpp"].flags += ["-mavx2", "-fno-lto"] SOURCES["SwizzleSSE2.cpp"].flags += CONFIG["SSE2_FLAGS"] SOURCES["SwizzleSSSE3.cpp"].flags += CONFIG["SSSE3_FLAGS"] - SOURCES["ssse3-scaler.c"].flags += CONFIG["SSSE3_FLAGS"] -diff -up firefox-122.0/gfx/skia/generate_mozbuild.py.pgo firefox-122.0/gfx/skia/generate_mozbuild.py ---- firefox-122.0/gfx/skia/generate_mozbuild.py.pgo 2024-01-19 18:21:17.975681537 +0100 -+++ firefox-122.0/gfx/skia/generate_mozbuild.py 2024-01-19 18:24:15.494934133 +0100 + elif CONFIG["TARGET_CPU"].startswith("mips"): +diff -up firefox-123.0/gfx/skia/generate_mozbuild.py.pgo firefox-123.0/gfx/skia/generate_mozbuild.py +--- firefox-123.0/gfx/skia/generate_mozbuild.py.pgo 2024-02-14 08:18:42.000000000 +0100 ++++ firefox-123.0/gfx/skia/generate_mozbuild.py 2024-02-19 10:51:40.901650227 +0100 @@ -54,10 +54,10 @@ if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'wind if CONFIG['INTEL_ARCHITECTURE']: SOURCES['skia/src/opts/SkOpts_ssse3.cpp'].flags += ['-Dskvx=skvx_ssse3', '-mssse3'] @@ -82,9 +82,9 @@ diff -up firefox-122.0/gfx/skia/generate_mozbuild.py.pgo firefox-122.0/gfx/skia/ elif CONFIG['TARGET_CPU'] == 'aarch64' and CONFIG['CC_TYPE'] in ('clang', 'gcc'): SOURCES['skia/src/opts/SkOpts_crc32.cpp'].flags += ['-Dskvx=skvx_crc32', '-march=armv8-a+crc'] -diff -up firefox-122.0/gfx/skia/moz.build.pgo firefox-122.0/gfx/skia/moz.build ---- firefox-122.0/gfx/skia/moz.build.pgo 2024-01-19 18:21:17.975681537 +0100 -+++ firefox-122.0/gfx/skia/moz.build 2024-01-19 18:25:13.472039275 +0100 +diff -up firefox-123.0/gfx/skia/moz.build.pgo firefox-123.0/gfx/skia/moz.build +--- firefox-123.0/gfx/skia/moz.build.pgo 2024-02-14 08:18:42.000000000 +0100 ++++ firefox-123.0/gfx/skia/moz.build 2024-02-19 10:51:40.901650227 +0100 @@ -564,10 +564,10 @@ if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'wind if CONFIG['INTEL_ARCHITECTURE']: SOURCES['skia/src/opts/SkOpts_ssse3.cpp'].flags += ['-Dskvx=skvx_ssse3', '-mssse3'] @@ -99,9 +99,9 @@ diff -up firefox-122.0/gfx/skia/moz.build.pgo firefox-122.0/gfx/skia/moz.build elif CONFIG['TARGET_CPU'] == 'aarch64' and CONFIG['CC_TYPE'] in ('clang', 'gcc'): SOURCES['skia/src/opts/SkOpts_crc32.cpp'].flags += ['-Dskvx=skvx_crc32', '-march=armv8-a+crc'] -diff -up firefox-122.0/toolkit/components/terminator/nsTerminator.cpp.pgo firefox-122.0/toolkit/components/terminator/nsTerminator.cpp ---- firefox-122.0/toolkit/components/terminator/nsTerminator.cpp.pgo 2024-01-18 21:41:36.000000000 +0100 -+++ firefox-122.0/toolkit/components/terminator/nsTerminator.cpp 2024-01-19 18:21:17.976681572 +0100 +diff -up firefox-123.0/toolkit/components/terminator/nsTerminator.cpp.pgo firefox-123.0/toolkit/components/terminator/nsTerminator.cpp +--- firefox-123.0/toolkit/components/terminator/nsTerminator.cpp.pgo 2024-02-14 08:18:56.000000000 +0100 ++++ firefox-123.0/toolkit/components/terminator/nsTerminator.cpp 2024-02-19 10:51:40.901650227 +0100 @@ -460,6 +460,11 @@ void nsTerminator::StartWatchdog() { } #endif diff --git a/sources b/sources index 315ce2d..107e4b8 100644 --- a/sources +++ b/sources @@ -1,5 +1,5 @@ SHA512 (mochitest-python.tar.gz) = 089b1593068b76f4572af0086eaccf52a6a1299bfffb58593206d19bf021ae381f2380bbfeb4371586cd53706ff6dde3d240238b2caf19b96c57dfc2f4524e36 SHA512 (cbindgen-vendor.tar.xz) = 3e7eaff088db918e95f5505e5feeb06e8b7b95cc62042a6d163a708fc76baea43d21bf49cf7e02bc64fdfc61e8d7704057dbb225098de56e110783104d166c54 SHA512 (dump_syms-vendor.tar.xz) = 5769c052fa874a965eb8837776b01fb097e8930f45d0d0d2a93997c4fae8726184a192aee52302bde62e62897801b1463cae9283563d9d60e8b8ee80a250f2a3 -SHA512 (firefox-langpacks-122.0.1-20240213.tar.xz) = b4e68b028e9cab4328bd0975f6d8d687add0933f23fa45db4b3e97f56c6585ec2b7d0e2e43eca5c57c79451993a15463fb88b3f7ff69412f52ee89115420487e -SHA512 (firefox-122.0.1.source.tar.xz) = 1d4fe1ed351edd748ede2ef6448798a32de9ed7a075a54a7ed5f7baa7b0c4c7f932c2e29f443c9066829e39f22a1dc94be5d00cc994193e949b72aa4a1c8ba41 +SHA512 (firefox-langpacks-123.0-20240219.tar.xz) = 01d81f8bdf71ba294896e2d3b6f328e2e493dd8b230f7772ae862286328f9b83d7d94b504e11ae9a9636ae6e8c06e90ce3198c1473f9be2698a588a9da10621e +SHA512 (firefox-123.0.source.tar.xz) = a19567a13e1b663e538c4af17491146adad1f0ab977995e8da9ce9ed428008ad20902dee4efb82d54e1319a0e31768609696bc822563d75732b622760129d8bb