diff --git a/.gitignore b/.gitignore index 120cbfe..4e96587 100644 --- a/.gitignore +++ b/.gitignore @@ -445,3 +445,5 @@ firefox-3.6.4.source.tar.bz2 /firefox-langpacks-84.0.2-20210106.tar.xz /firefox-85.0.source.tar.xz /firefox-langpacks-85.0-20210120.tar.xz +/firefox-85.0.1.source.tar.xz +/firefox-langpacks-85.0.1-20210208.tar.xz diff --git a/firefox.spec b/firefox.spec index ca3b6de..8c0f040 100644 --- a/firefox.spec +++ b/firefox.spec @@ -173,13 +173,13 @@ ExcludeArch: armv7hl Summary: Mozilla Firefox Web browser Name: firefox -Version: 85.0 -Release: 9%{?pre_tag}%{?dist} +Version: 85.0.1 +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}-20210120.tar.xz +Source1: firefox-langpacks-%{version}%{?pre_version}-20210208.tar.xz %endif Source2: cbindgen-vendor.tar.xz Source10: firefox-mozconfig @@ -255,6 +255,7 @@ Patch427: mozilla-1678247.patch Patch428: mozilla-1679933.patch Patch429: mozilla-1631061-1.patch Patch430: mozilla-1631061-2.patch +Patch431: mozilla-1690152.patch # PGO/LTO patches Patch600: pgo.patch @@ -469,6 +470,7 @@ This package contains results of tests executed during build. %patch428 -p1 -b .1679933 %patch429 -p1 -b .1631061 %patch430 -p1 -b .1631061 +%patch431 -p1 -b .1690152 # PGO patches %if %{build_with_pgo} @@ -929,6 +931,9 @@ mkdir -p %{buildroot}%{_datadir}/metainfo mkdir -p %{buildroot}%{_datadir}/gnome-shell/search-providers %{__cp} %{SOURCE34} %{buildroot}%{_datadir}/gnome-shell/search-providers +# Remove gtk2 support as flash plugin is no longer supported +rm -rf %{buildroot}%{mozappdir}/gtk2/ + # Remove copied libraries to speed up build rm -f %{buildroot}%{mozappdirdev}/sdk/lib/libmozjs.so rm -f %{buildroot}%{mozappdirdev}/sdk/lib/libmozalloc.so @@ -1023,7 +1028,6 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : %{mozappdir}/browser/crashreporter-override.ini %endif %{mozappdir}/*.so -%{mozappdir}/gtk2/*.so %{mozappdir}/defaults/pref/channel-prefs.js %{mozappdir}/dependentlibs.list %{mozappdir}/dictionaries @@ -1042,6 +1046,15 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : #--------------------------------------------------------------------- %changelog +* Mon Feb 08 2021 Martin Stransky - 85.0.1-1 +- Updated to 85.0.1 + +* Wed Feb 03 2021 Dan HorĂ¡k - 85.0-11 +- Fix parameter passing on ppc64le (mozb#1690152) + +* Tue Feb 02 2021 Kalev Lember - 85.0-10 +- Remove gtk2 support as flash plugin is no longer supported + * Sat Jan 30 2021 Martin Stransky - 85.0-9 - Enable WebRender on KDE/Wayland and AMD/Intel drivers. diff --git a/mozilla-1690152.patch b/mozilla-1690152.patch new file mode 100644 index 0000000..fb672d3 --- /dev/null +++ b/mozilla-1690152.patch @@ -0,0 +1,97 @@ + +# HG changeset patch +# User Cameron Kaiser +# Date 1612231460 0 +# Node ID 579a66fd796690fb752485215b2edaa6167ebf16 +# Parent a00504e040bfd34d01c74d478beb9d308ec085be +Bug 1690152 - on ppc64 properly skip parameter slots if we overflow GPRs while still having FPRs to burn. r=tcampbell + +Differential Revision: https://phabricator.services.mozilla.com/D103724 + +diff --git a/xpcom/reflect/xptcall/md/unix/xptcinvoke_ppc64_linux.cpp b/xpcom/reflect/xptcall/md/unix/xptcinvoke_ppc64_linux.cpp +--- a/xpcom/reflect/xptcall/md/unix/xptcinvoke_ppc64_linux.cpp ++++ b/xpcom/reflect/xptcall/md/unix/xptcinvoke_ppc64_linux.cpp +@@ -86,27 +86,37 @@ extern "C" void invoke_copy_to_stack(uin + case nsXPTType::T_WCHAR: value = s->val.wc; break; + default: value = (uint64_t) s->val.p; break; + } + } + + if (!s->IsIndirect() && s->type == nsXPTType::T_DOUBLE) { + if (nr_fpr < FPR_COUNT) { + fpregs[nr_fpr++] = s->val.d; +- nr_gpr++; ++ // Even if we have enough FPRs, still skip space in ++ // the parameter area if we ran out of placeholder GPRs. ++ if (nr_gpr < GPR_COUNT) { ++ nr_gpr++; ++ } else { ++ d++; ++ } + } else { + *((double *)d) = s->val.d; + d++; + } + } + else if (!s->IsIndirect() && s->type == nsXPTType::T_FLOAT) { + if (nr_fpr < FPR_COUNT) { + // Single-precision floats are passed in FPRs too. + fpregs[nr_fpr++] = s->val.f; +- nr_gpr++; ++ if (nr_gpr < GPR_COUNT) { ++ nr_gpr++; ++ } else { ++ d++; ++ } + } else { + #ifdef __LITTLE_ENDIAN__ + *((float *)d) = s->val.f; + #else + // Big endian needs adjustment to point to the least + // significant word. + float* p = (float*)d; + p++; +diff --git a/xpcom/reflect/xptcall/md/unix/xptcstubs_ppc64_linux.cpp b/xpcom/reflect/xptcall/md/unix/xptcstubs_ppc64_linux.cpp +--- a/xpcom/reflect/xptcall/md/unix/xptcstubs_ppc64_linux.cpp ++++ b/xpcom/reflect/xptcall/md/unix/xptcstubs_ppc64_linux.cpp +@@ -98,27 +98,37 @@ PrepareAndDispatch(nsXPTCStubBase * self + nr_gpr++; + else + ap++; + } + + if (!param.IsOut() && type == nsXPTType::T_DOUBLE) { + if (nr_fpr < FPR_COUNT) { + dp->val.d = fpregs[nr_fpr++]; +- nr_gpr++; ++ // Even if we have enough FPRs, still skip space in ++ // the parameter area if we ran out of placeholder GPRs. ++ if (nr_gpr < GPR_COUNT) { ++ nr_gpr++; ++ } else { ++ ap++; ++ } + } else { + dp->val.d = *(double*)ap++; + } + continue; + } + if (!param.IsOut() && type == nsXPTType::T_FLOAT) { + if (nr_fpr < FPR_COUNT) { + // Single-precision floats are passed in FPRs too. + dp->val.f = (float)fpregs[nr_fpr++]; +- nr_gpr++; ++ if (nr_gpr < GPR_COUNT) { ++ nr_gpr++; ++ } else { ++ ap++; ++ } + } else { + #ifdef __LITTLE_ENDIAN__ + dp->val.f = *(float*)ap++; + #else + // Big endian needs adjustment to point to the least + // significant word. + float* p = (float*)ap; + p++; + diff --git a/sources b/sources index 91c83fd..7a6a493 100644 --- a/sources +++ b/sources @@ -1,4 +1,4 @@ SHA512 (cbindgen-vendor.tar.xz) = 3c925c5523246b7dfbcb4ce563483d5b45315a06dc90f2cf07cddef0c263dd15b410afbbe4d86594de96a308e93be3b27ffec01f5f759a42ecba3cc983b1677f SHA512 (mochitest-python.tar.gz) = 7f357cb8bd93d64be5cb75819a8a813d2f8f217ff25f0df8c3190910744132405d45797b3900775a44b554f5c70cf2682809c9e7a686ca131fddcd81e98028d9 -SHA512 (firefox-85.0.source.tar.xz) = a88472e66baab32d98cb9d13d7dd3c41b47a697ce2a42209612d2342bd6c1c26cd80cdd8905a4cecc72895f155df09762735e8af24bc6156663b7a14e890be4e -SHA512 (firefox-langpacks-85.0-20210120.tar.xz) = ec4b720d74940849f90831de72c5b7bdc004075e4a9b3b966c218b87e4ff9c3c10117a193d947cd971db955f1f3be99d7af706f981b8c0195c16936b1a10881e +SHA512 (firefox-85.0.1.source.tar.xz) = ad2b72ec209ca14ec78ebcb4718553119f74895e951a5254f9a1e0fc9d7cad3087a7dd4f82368c2845e3018bb3677853241e9c1e575f03e9b7b565e65b860e22 +SHA512 (firefox-langpacks-85.0.1-20210208.tar.xz) = d8bf4924c37c9b3ac2f64cbc136f54d5f979deae2e3402bd8f76ffdd99f0671eb8bc9695fabb7199a5f021377db59bc11d5420c4ff49a8bf0d5c8af516ce6391