Accepting request 856849 from mozilla:Factory
- Mozilla Firefox 84.0 * Firefox 84 is the final release to support Adobe Flash * WebRender is enabled by default when run on GNOME-based X11 Linux desktops MFSA 2020-54 (bsc#1180039)) * CVE-2020-16042 (bmo#1679003) Operations on a BigInt could have caused uninitialized memory to be exposed * CVE-2020-26971 (bmo#1663466) Heap buffer overflow in WebGL * CVE-2020-26972 (bmo#1671382) Use-After-Free in WebGL * CVE-2020-26973 (bmo#1680084) CSS Sanitizer performed incorrect sanitization * CVE-2020-26974 (bmo#1681022) Incorrect cast of StyleGenericFlexBasis resulted in a heap use-after-free * CVE-2020-26975 (bmo#1661071) Malicious applications on Android could have induced Firefox for Android into sending arbitrary attacker-specified headers * CVE-2020-26976 (bmo#1674343) HTTPS pages could have been intercepted by a registered service worker when they should not have been * CVE-2020-26977 (bmo#1676311) URL spoofing via unresponsive port in Firefox for Android * CVE-2020-26978 (bmo#1677047) Internal network hosts could have been probed by a malicious webpage * CVE-2020-26979 (bmo#1641287, bmo#1673299) When entering an address in the address or search bars, a OBS-URL: https://build.opensuse.org/request/show/856849 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/MozillaFirefox?expand=0&rev=323
This commit is contained in:
commit
bf6ac788a8
@ -1,3 +1,59 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Sun Dec 13 18:18:58 UTC 2020 - Wolfgang Rosenauer <wr@rosenauer.org>
|
||||||
|
|
||||||
|
- Mozilla Firefox 84.0
|
||||||
|
* Firefox 84 is the final release to support Adobe Flash
|
||||||
|
* WebRender is enabled by default when run on GNOME-based X11
|
||||||
|
Linux desktops
|
||||||
|
MFSA 2020-54 (bsc#1180039))
|
||||||
|
* CVE-2020-16042 (bmo#1679003)
|
||||||
|
Operations on a BigInt could have caused uninitialized memory
|
||||||
|
to be exposed
|
||||||
|
* CVE-2020-26971 (bmo#1663466)
|
||||||
|
Heap buffer overflow in WebGL
|
||||||
|
* CVE-2020-26972 (bmo#1671382)
|
||||||
|
Use-After-Free in WebGL
|
||||||
|
* CVE-2020-26973 (bmo#1680084)
|
||||||
|
CSS Sanitizer performed incorrect sanitization
|
||||||
|
* CVE-2020-26974 (bmo#1681022)
|
||||||
|
Incorrect cast of StyleGenericFlexBasis resulted in a heap
|
||||||
|
use-after-free
|
||||||
|
* CVE-2020-26975 (bmo#1661071)
|
||||||
|
Malicious applications on Android could have induced Firefox
|
||||||
|
for Android into sending arbitrary attacker-specified headers
|
||||||
|
* CVE-2020-26976 (bmo#1674343)
|
||||||
|
HTTPS pages could have been intercepted by a registered
|
||||||
|
service worker when they should not have been
|
||||||
|
* CVE-2020-26977 (bmo#1676311)
|
||||||
|
URL spoofing via unresponsive port in Firefox for Android
|
||||||
|
* CVE-2020-26978 (bmo#1677047)
|
||||||
|
Internal network hosts could have been probed by a malicious
|
||||||
|
webpage
|
||||||
|
* CVE-2020-26979 (bmo#1641287, bmo#1673299)
|
||||||
|
When entering an address in the address or search bars, a
|
||||||
|
website could have redirected the user before they were
|
||||||
|
navigated to the intended url
|
||||||
|
* CVE-2020-35111 (bmo#1657916)
|
||||||
|
The proxy.onRequest API did not catch view-source URLs
|
||||||
|
* CVE-2020-35112 (bmo#1661365)
|
||||||
|
Opening an extension-less download may have inadvertently
|
||||||
|
launched an executable instead
|
||||||
|
* CVE-2020-35113 (bmo#1664831, bmo#1673589)
|
||||||
|
Memory safety bugs fixed in Firefox 84 and Firefox ESR 78.6
|
||||||
|
* CVE-2020-35114 (bmo#1607449, bmo#1640416, bmo#1656459,
|
||||||
|
bmo#1669914, bmo#1673567)
|
||||||
|
Memory safety bugs fixed in Firefox 84
|
||||||
|
- requires
|
||||||
|
NSS >= 3.59
|
||||||
|
rust >= 1.44
|
||||||
|
rust-cbindgen >= 0.15.0
|
||||||
|
- remove revert-795c8762b16b.patch and replace with mozilla-pgo.patch
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sat Nov 21 08:12:17 UTC 2020 - Kirill Kirillov <kkirill@opensuse.org>
|
||||||
|
|
||||||
|
- Add/Enable GNOME search provider
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Sun Nov 15 12:16:53 UTC 2020 - Wolfgang Rosenauer <wr@rosenauer.org>
|
Sun Nov 15 12:16:53 UTC 2020 - Wolfgang Rosenauer <wr@rosenauer.org>
|
||||||
|
|
||||||
@ -82,6 +138,11 @@ Mon Nov 2 09:00:13 UTC 2020 - Wolfgang Rosenauer <wr@rosenauer.org>
|
|||||||
- Mozilla Firefox 82.0.2
|
- Mozilla Firefox 82.0.2
|
||||||
* few bugfixes for introduced regressions
|
* few bugfixes for introduced regressions
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sun Nov 1 20:15:17 UTC 2020 - Kirill Kirillov <kkirill@opensuse.org>
|
||||||
|
|
||||||
|
- Enable GNOME search provider
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Thu Oct 15 20:44:47 UTC 2020 - Wolfgang Rosenauer <wr@rosenauer.org>
|
Thu Oct 15 20:44:47 UTC 2020 - Wolfgang Rosenauer <wr@rosenauer.org>
|
||||||
|
|
||||||
|
@ -29,15 +29,15 @@
|
|||||||
# orig_suffix b3
|
# orig_suffix b3
|
||||||
# major 69
|
# major 69
|
||||||
# mainver %major.99
|
# mainver %major.99
|
||||||
%define major 83
|
%define major 84
|
||||||
%define mainver %major.0
|
%define mainver %major.0
|
||||||
%define orig_version 83.0
|
%define orig_version 84.0
|
||||||
%define orig_suffix %{nil}
|
%define orig_suffix %{nil}
|
||||||
%define update_channel release
|
%define update_channel release
|
||||||
%define branding 1
|
%define branding 1
|
||||||
%define devpkg 1
|
%define devpkg 1
|
||||||
|
|
||||||
# PGO builds do not work in TW currently (bmo#1642410)
|
# PGO builds do not work in TW currently (bmo#1680306)
|
||||||
%define do_profiling 0
|
%define do_profiling 0
|
||||||
|
|
||||||
# upstream default is clang (to use gcc for large parts set to 0)
|
# upstream default is clang (to use gcc for large parts set to 0)
|
||||||
@ -92,7 +92,7 @@ BuildRequires: gcc9-c++
|
|||||||
%else
|
%else
|
||||||
BuildRequires: gcc-c++
|
BuildRequires: gcc-c++
|
||||||
%endif
|
%endif
|
||||||
BuildRequires: cargo >= 1.43
|
BuildRequires: cargo >= 1.44
|
||||||
BuildRequires: ccache
|
BuildRequires: ccache
|
||||||
BuildRequires: libXcomposite-devel
|
BuildRequires: libXcomposite-devel
|
||||||
BuildRequires: libcurl-devel
|
BuildRequires: libcurl-devel
|
||||||
@ -101,7 +101,7 @@ BuildRequires: libiw-devel
|
|||||||
BuildRequires: libproxy-devel
|
BuildRequires: libproxy-devel
|
||||||
BuildRequires: makeinfo
|
BuildRequires: makeinfo
|
||||||
BuildRequires: mozilla-nspr-devel >= 4.29
|
BuildRequires: mozilla-nspr-devel >= 4.29
|
||||||
BuildRequires: mozilla-nss-devel >= 3.58
|
BuildRequires: mozilla-nss-devel >= 3.59
|
||||||
BuildRequires: nasm >= 2.14
|
BuildRequires: nasm >= 2.14
|
||||||
BuildRequires: nodejs10 >= 10.22.1
|
BuildRequires: nodejs10 >= 10.22.1
|
||||||
%if 0%{?sle_version} >= 120000 && 0%{?sle_version} < 150000
|
%if 0%{?sle_version} >= 120000 && 0%{?sle_version} < 150000
|
||||||
@ -111,8 +111,8 @@ BuildRequires: python36
|
|||||||
BuildRequires: python3 >= 3.5
|
BuildRequires: python3 >= 3.5
|
||||||
BuildRequires: python3-devel
|
BuildRequires: python3-devel
|
||||||
%endif
|
%endif
|
||||||
BuildRequires: rust >= 1.43
|
BuildRequires: rust >= 1.44
|
||||||
BuildRequires: rust-cbindgen >= 0.14.3
|
BuildRequires: rust-cbindgen >= 0.15.0
|
||||||
BuildRequires: unzip
|
BuildRequires: unzip
|
||||||
BuildRequires: update-desktop-files
|
BuildRequires: update-desktop-files
|
||||||
BuildRequires: xorg-x11-libXt-devel
|
BuildRequires: xorg-x11-libXt-devel
|
||||||
@ -178,6 +178,7 @@ Source13: spellcheck.js
|
|||||||
Source14: https://github.com/openSUSE/firefox-scripts/raw/5e54f4a/create-tar.sh
|
Source14: https://github.com/openSUSE/firefox-scripts/raw/5e54f4a/create-tar.sh
|
||||||
Source15: firefox-appdata.xml
|
Source15: firefox-appdata.xml
|
||||||
Source16: %{name}.changes
|
Source16: %{name}.changes
|
||||||
|
Source17: firefox-search-provider.ini
|
||||||
# Set up API keys, see http://www.chromium.org/developers/how-tos/api-keys
|
# Set up API keys, see http://www.chromium.org/developers/how-tos/api-keys
|
||||||
# Note: these are for the openSUSE Firefox builds ONLY. For your own distribution,
|
# Note: these are for the openSUSE Firefox builds ONLY. For your own distribution,
|
||||||
# please get your own set of keys.
|
# please get your own set of keys.
|
||||||
@ -194,6 +195,7 @@ Patch6: mozilla-sandbox-fips.patch
|
|||||||
Patch7: mozilla-fix-aarch64-libopus.patch
|
Patch7: mozilla-fix-aarch64-libopus.patch
|
||||||
Patch8: mozilla-disable-wasm-emulate-arm-unaligned-fp-access.patch
|
Patch8: mozilla-disable-wasm-emulate-arm-unaligned-fp-access.patch
|
||||||
Patch9: mozilla-s390-context.patch
|
Patch9: mozilla-s390-context.patch
|
||||||
|
Patch10: mozilla-pgo.patch
|
||||||
Patch11: mozilla-reduce-rust-debuginfo.patch
|
Patch11: mozilla-reduce-rust-debuginfo.patch
|
||||||
Patch13: mozilla-bmo1005535.patch
|
Patch13: mozilla-bmo1005535.patch
|
||||||
Patch14: mozilla-bmo1568145.patch
|
Patch14: mozilla-bmo1568145.patch
|
||||||
@ -211,7 +213,6 @@ Patch25: mozilla-bmo998749.patch
|
|||||||
Patch26: mozilla-bmo1626236.patch
|
Patch26: mozilla-bmo1626236.patch
|
||||||
Patch27: mozilla-s390x-skia-gradient.patch
|
Patch27: mozilla-s390x-skia-gradient.patch
|
||||||
Patch28: mozilla-libavcodec58_91.patch
|
Patch28: mozilla-libavcodec58_91.patch
|
||||||
Patch29: revert-795c8762b16b.patch
|
|
||||||
# Firefox/browser
|
# Firefox/browser
|
||||||
Patch101: firefox-kde.patch
|
Patch101: firefox-kde.patch
|
||||||
Patch102: firefox-branded-icons.patch
|
Patch102: firefox-branded-icons.patch
|
||||||
@ -334,6 +335,7 @@ cd $RPM_BUILD_DIR/%{srcname}-%{orig_version}
|
|||||||
%patch7 -p1
|
%patch7 -p1
|
||||||
%patch8 -p1
|
%patch8 -p1
|
||||||
%patch9 -p1
|
%patch9 -p1
|
||||||
|
%patch10 -p1
|
||||||
%patch11 -p1
|
%patch11 -p1
|
||||||
%patch13 -p1
|
%patch13 -p1
|
||||||
%patch14 -p1
|
%patch14 -p1
|
||||||
@ -353,7 +355,6 @@ cd $RPM_BUILD_DIR/%{srcname}-%{orig_version}
|
|||||||
%patch26 -p1
|
%patch26 -p1
|
||||||
%patch27 -p1
|
%patch27 -p1
|
||||||
%patch28 -p1
|
%patch28 -p1
|
||||||
%patch29 -p1 -R
|
|
||||||
# Firefox
|
# Firefox
|
||||||
%patch101 -p1
|
%patch101 -p1
|
||||||
%patch102 -p1
|
%patch102 -p1
|
||||||
@ -508,8 +509,7 @@ ac_add_options --enable-optimize="-O1"
|
|||||||
%endif
|
%endif
|
||||||
%ifarch x86_64
|
%ifarch x86_64
|
||||||
# LTO needs newer toolchain stack only (at least GCC 8.2.1 (r268506)
|
# LTO needs newer toolchain stack only (at least GCC 8.2.1 (r268506)
|
||||||
# TW's gcc is currently also broken with LTO https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93951
|
%if 0%{?suse_version} > 1500
|
||||||
%if 0%{?suse_version} > 1500 && 0%{?suse_version} < 1550
|
|
||||||
ac_add_options --enable-lto
|
ac_add_options --enable-lto
|
||||||
%if 0%{?do_profiling}
|
%if 0%{?do_profiling}
|
||||||
ac_add_options MOZ_PGO=1
|
ac_add_options MOZ_PGO=1
|
||||||
@ -536,7 +536,6 @@ xvfb-run --server-args="-screen 0 1920x1080x24" \
|
|||||||
|
|
||||||
# build additional locales
|
# build additional locales
|
||||||
%if %localize
|
%if %localize
|
||||||
mkdir -p %{buildroot}%{progdir}/browser/extensions
|
|
||||||
truncate -s 0 %{_tmppath}/translations.{common,other}
|
truncate -s 0 %{_tmppath}/translations.{common,other}
|
||||||
# langpack-build can not be done in parallel easily (see https://bugzilla.mozilla.org/show_bug.cgi?id=1660943)
|
# langpack-build can not be done in parallel easily (see https://bugzilla.mozilla.org/show_bug.cgi?id=1660943)
|
||||||
# Therefore, we have to have a separate obj-dir for each language
|
# Therefore, we have to have a separate obj-dir for each language
|
||||||
@ -562,6 +561,7 @@ EOF
|
|||||||
%else
|
%else
|
||||||
%define njobs 0%{?jobs:%jobs}
|
%define njobs 0%{?jobs:%jobs}
|
||||||
%endif
|
%endif
|
||||||
|
mkdir -p $RPM_BUILD_DIR/langpacks_artifacts/
|
||||||
sed -r '/^(ja-JP-mac|ga-IE|en-US|)$/d;s/ .*$//' $RPM_BUILD_DIR/%{srcname}-%{orig_version}/browser/locales/shipped-locales \
|
sed -r '/^(ja-JP-mac|ga-IE|en-US|)$/d;s/ .*$//' $RPM_BUILD_DIR/%{srcname}-%{orig_version}/browser/locales/shipped-locales \
|
||||||
| xargs -n 1 %{?njobs:-P %njobs} -I {} /bin/sh -c '
|
| xargs -n 1 %{?njobs:-P %njobs} -I {} /bin/sh -c '
|
||||||
locale=$1
|
locale=$1
|
||||||
@ -571,10 +571,7 @@ sed -r '/^(ja-JP-mac|ga-IE|en-US|)$/d;s/ .*$//' $RPM_BUILD_DIR/%{srcname}-%{orig
|
|||||||
# nsinstall is needed for langpack-build. It is already built by `./mach build`, but building it again is very fast
|
# nsinstall is needed for langpack-build. It is already built by `./mach build`, but building it again is very fast
|
||||||
./mach build config/nsinstall langpack-$locale
|
./mach build config/nsinstall langpack-$locale
|
||||||
cp -L ../obj_$locale/dist/linux-*/xpi/firefox-%{orig_version}.$locale.langpack.xpi \
|
cp -L ../obj_$locale/dist/linux-*/xpi/firefox-%{orig_version}.$locale.langpack.xpi \
|
||||||
%{buildroot}%{progdir}/browser/extensions/langpack-$locale@firefox.mozilla.org.xpi
|
$RPM_BUILD_DIR/langpacks_artifacts/langpack-$locale@firefox.mozilla.org.xpi
|
||||||
# remove prefs, profile defaults, and hyphenation from langpack
|
|
||||||
#rm -rf %{buildroot}%{progdir}/browser/extensions/langpack-$locale@firefox.mozilla.org/defaults
|
|
||||||
#rm -rf %{buildroot}%{progdir}/browser/extensions/langpack-$locale@firefox.mozilla.org/hyphenation
|
|
||||||
# check against the fixed common list and sort into the right filelist
|
# check against the fixed common list and sort into the right filelist
|
||||||
_matched=0
|
_matched=0
|
||||||
for _match in ar ca cs da de el en-GB es-AR es-CL es-ES fi fr hu it ja ko nb-NO nl pl pt-BR pt-PT ru sv-SE zh-CN zh-TW; do
|
for _match in ar ca cs da de el en-GB es-AR es-CL es-ES fi fr hu it ja ko nb-NO nl pl pt-BR pt-PT ru sv-SE zh-CN zh-TW; do
|
||||||
@ -604,6 +601,8 @@ grep amazondotcom dist/firefox/browser/omni.ja
|
|||||||
# copy tree into RPM_BUILD_ROOT
|
# copy tree into RPM_BUILD_ROOT
|
||||||
mkdir -p %{buildroot}%{progdir}
|
mkdir -p %{buildroot}%{progdir}
|
||||||
cp -rf $RPM_BUILD_DIR/obj/dist/%{srcname}/* %{buildroot}%{progdir}
|
cp -rf $RPM_BUILD_DIR/obj/dist/%{srcname}/* %{buildroot}%{progdir}
|
||||||
|
mkdir -p %{buildroot}%{progdir}/browser/extensions
|
||||||
|
cp -rf $RPM_BUILD_DIR/langpacks_artifacts/* %{buildroot}%{progdir}/browser/extensions/
|
||||||
mkdir -p %{buildroot}%{progdir}/distribution/extensions
|
mkdir -p %{buildroot}%{progdir}/distribution/extensions
|
||||||
mkdir -p %{buildroot}%{progdir}/browser/defaults/preferences/
|
mkdir -p %{buildroot}%{progdir}/browser/defaults/preferences/
|
||||||
# renaming executables (for regular vs. ESR)
|
# renaming executables (for regular vs. ESR)
|
||||||
@ -655,6 +654,9 @@ sed "s:firefox.desktop:%{desktop_file_name}:g" \
|
|||||||
# install man-page
|
# install man-page
|
||||||
mkdir -p %{buildroot}%{_mandir}/man1/
|
mkdir -p %{buildroot}%{_mandir}/man1/
|
||||||
cp %{SOURCE11} %{buildroot}%{_mandir}/man1/%{progname}.1
|
cp %{SOURCE11} %{buildroot}%{_mandir}/man1/%{progname}.1
|
||||||
|
# install GNOME Shell search provider
|
||||||
|
mkdir -p %{buildroot}%{_datadir}/gnome-shell/search-providers
|
||||||
|
cp %{SOURCE17} %{buildroot}%{_datadir}/gnome-shell/search-providers
|
||||||
##########
|
##########
|
||||||
# ADDONS
|
# ADDONS
|
||||||
#
|
#
|
||||||
@ -775,6 +777,9 @@ exit 0
|
|||||||
%endif
|
%endif
|
||||||
%{_datadir}/applications/%{desktop_file_name}.desktop
|
%{_datadir}/applications/%{desktop_file_name}.desktop
|
||||||
%{_datadir}/mime/packages/%{progname}.xml
|
%{_datadir}/mime/packages/%{progname}.xml
|
||||||
|
%dir %{_datadir}/gnome-shell
|
||||||
|
%dir %{_datadir}/gnome-shell/search-providers
|
||||||
|
%{_datadir}/gnome-shell/search-providers/*.ini
|
||||||
%dir %{_datadir}/mozilla
|
%dir %{_datadir}/mozilla
|
||||||
%dir %{_datadir}/mozilla/extensions
|
%dir %{_datadir}/mozilla/extensions
|
||||||
%dir %{_datadir}/mozilla/extensions/%{firefox_appid}
|
%dir %{_datadir}/mozilla/extensions/%{firefox_appid}
|
||||||
|
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:d69e84e8b8449f828683d274c24e03095858362bfed21b08bdd7fe715eea5398
|
|
||||||
size 351331940
|
|
@ -1,16 +0,0 @@
|
|||||||
-----BEGIN PGP SIGNATURE-----
|
|
||||||
|
|
||||||
iQIzBAABCgAdFiEECXsxMHeuYqAvhNpN8aZmj7t9Vy4FAl+tfCIACgkQ8aZmj7t9
|
|
||||||
Vy53Kg/7Brg/Ii6J/Gcj8HFS6qvKIMQchM0jZwuqIHUr5IxSH8py2Y69Mvv8oFDG
|
|
||||||
xJdoLFzDmY6+sIOzrkE82iZ+ZJanCwm7eHqol7eGDFp++CXCo/0hUeGfp3w6uIEF
|
|
||||||
ypczVW8K6Z4008BzD3BN982zKjLG+IhK1whWoowzXp4oWHsJzqhs2XY2V5QNV0T8
|
|
||||||
6bI+t9O2CXjKg7aJ0eIf9+mgYUi2llnKUNj92mY0LDvhCuRihehXXn+2aSE0XzAG
|
|
||||||
G1l19TXlWkkdlkkYNCEEi0UKRJlg61UVXdX932vEFWDZT3iVkcrTqG+ExIKpzTO3
|
|
||||||
HvUy/y1zbXZKH3LDfzpx+vi6zk+Ve/PFv51xphY0iRKAOQGE3tCY9rmpnXeClrPX
|
|
||||||
5dc0WmelkQrK09WY1Gi2Doh0x+pE5BmOuOCCHizb34WnJ1Jiyjzo1z61iOEB+X+t
|
|
||||||
QQ4/iowKOMPs4mqHvYVmnWmVxGBbTYQ3D19ErYZPLWrm+37tM6t/o/jQPpOtUiW/
|
|
||||||
23pTXrTVsC8FJdmpNWXuUY2pgvL61LIntDKBMqbiswG2I1/EZ9TzKl9UTZ5NdaBk
|
|
||||||
OIGctLIKFFNsAhFMUzjYz8ihwi0weBgOKuUa7dfxOHHzekitH1aKriss0IHI+iaK
|
|
||||||
u6hf66T6e3V/w8suqOz7hI+TvM6PaMdJH3EdXCtS2Ln14U0wliI=
|
|
||||||
=HFQx
|
|
||||||
-----END PGP SIGNATURE-----
|
|
3
firefox-84.0.source.tar.xz
Normal file
3
firefox-84.0.source.tar.xz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:23273ef0165b243f5d0908c38e7854d38070282c9b526e8d93b7503cd5f69138
|
||||||
|
size 366395172
|
16
firefox-84.0.source.tar.xz.asc
Normal file
16
firefox-84.0.source.tar.xz.asc
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
-----BEGIN PGP SIGNATURE-----
|
||||||
|
|
||||||
|
iQIzBAABCgAdFiEECXsxMHeuYqAvhNpN8aZmj7t9Vy4FAl/UEmMACgkQ8aZmj7t9
|
||||||
|
Vy6eUA/+MnjreNJs3uU+Xx/sLzAnUMAUXgrUhcyxXaTLciDwr4ZWYMmXuM+O+1+m
|
||||||
|
bj6LKDZlUjEhW81FS8ALZXlz4aZHBw+alh+XpjWTSdnTRW9RBXIfewSs4QljAyDE
|
||||||
|
YsT1zFWeacEKag6kF1GxzyH9yM3Hh5giil7wKLbPaEJ+R+8UY+VYdG1VQ3U18DPL
|
||||||
|
tC92GUexs4V8G86KauMXFWgX9VynKRbj3W41SujIq3MwoRFQCDUXjW80Oo1ldlqt
|
||||||
|
MLxFDYJSCrY9r9bbXJ29CS+EeJQgxBQiR/0Y9YplNvDQOHCaPc/Zg4jS6aqEJrsd
|
||||||
|
kKH3qudKWYJ25KJTMMSejROUMEHqYU5MOJKtKJ8jFS3dxp6DguWvID4BKC60KIeO
|
||||||
|
7fs1NuHFL1hVb7vrz1Vmk7v+5qhubki97J47ZKz+hhg3VIpAOc01idRRltFejgPa
|
||||||
|
bGK6IDR8zYeSZrHQoTrVqmcdllrV9XL7k3W/YGe343NQjzz159tSvQI9lB6hdrU9
|
||||||
|
6MN83NCu4ayl9pvkimGlEyPyVrZ5LWnBQuhJkKrvg/Lzv0xrnXH/7abEK+GDAJjg
|
||||||
|
llwpzD3PfXcmpStF6KX6kunul22NoB14Nk4iMKRNLe50TaO7CiZytidHwpQQsl2m
|
||||||
|
1tFR97h4wLmjE7y1faB1/Gy0MDRaGTwQXBHM4cyoIPaNQyHWQpA=
|
||||||
|
=FYid
|
||||||
|
-----END PGP SIGNATURE-----
|
@ -3,7 +3,7 @@
|
|||||||
# Date 1559300151 -7200
|
# Date 1559300151 -7200
|
||||||
# Fri May 31 12:55:51 2019 +0200
|
# Fri May 31 12:55:51 2019 +0200
|
||||||
# Node ID 54d41b0033b8d649d842a1f862c6fed8b9874dec
|
# Node ID 54d41b0033b8d649d842a1f862c6fed8b9874dec
|
||||||
# Parent 3804871eac4171b99e9049dbc881b5304b5ac207
|
# Parent 8310cc1a162e9dd066a20f6a3bbd271993b67fc6
|
||||||
How to apply this patch:
|
How to apply this patch:
|
||||||
1. Import and apply it
|
1. Import and apply it
|
||||||
2. cp browser/base/content/browser.xul browser/base/content/browser-kde.xul
|
2. cp browser/base/content/browser.xul browser/base/content/browser-kde.xul
|
||||||
@ -14,7 +14,7 @@ How to apply this patch:
|
|||||||
diff --git a/browser/components/preferences/main.js b/browser/components/preferences/main.js
|
diff --git a/browser/components/preferences/main.js b/browser/components/preferences/main.js
|
||||||
--- a/browser/components/preferences/main.js
|
--- a/browser/components/preferences/main.js
|
||||||
+++ b/browser/components/preferences/main.js
|
+++ b/browser/components/preferences/main.js
|
||||||
@@ -335,16 +335,23 @@ var gMainPane = {
|
@@ -347,16 +347,23 @@ var gMainPane = {
|
||||||
}, backoffTimes[this._backoffIndex + 1 < backoffTimes.length ? this._backoffIndex++ : backoffTimes.length - 1]);
|
}, backoffTimes[this._backoffIndex + 1 < backoffTimes.length ? this._backoffIndex++ : backoffTimes.length - 1]);
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -38,7 +38,7 @@ diff --git a/browser/components/preferences/main.js b/browser/components/prefere
|
|||||||
);
|
);
|
||||||
let performanceSettingsUrl =
|
let performanceSettingsUrl =
|
||||||
Services.urlFormatter.formatURLPref("app.support.baseURL") +
|
Services.urlFormatter.formatURLPref("app.support.baseURL") +
|
||||||
@@ -1291,16 +1298,27 @@ var gMainPane = {
|
@@ -1326,16 +1333,27 @@ var gMainPane = {
|
||||||
this._backoffIndex = 0;
|
this._backoffIndex = 0;
|
||||||
|
|
||||||
let shellSvc = getShellService();
|
let shellSvc = getShellService();
|
||||||
@ -69,24 +69,24 @@ diff --git a/browser/components/preferences/main.js b/browser/components/prefere
|
|||||||
diff --git a/browser/components/shell/moz.build b/browser/components/shell/moz.build
|
diff --git a/browser/components/shell/moz.build b/browser/components/shell/moz.build
|
||||||
--- a/browser/components/shell/moz.build
|
--- a/browser/components/shell/moz.build
|
||||||
+++ b/browser/components/shell/moz.build
|
+++ b/browser/components/shell/moz.build
|
||||||
@@ -34,16 +34,18 @@ if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'coco
|
@@ -32,16 +32,18 @@ if CONFIG["MOZ_WIDGET_TOOLKIT"] == "coco
|
||||||
]
|
]
|
||||||
elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'gtk':
|
elif CONFIG["MOZ_WIDGET_TOOLKIT"] == "gtk":
|
||||||
XPIDL_SOURCES += [
|
XPIDL_SOURCES += [
|
||||||
'nsIGNOMEShellService.idl',
|
"nsIGNOMEShellService.idl",
|
||||||
]
|
]
|
||||||
|
|
||||||
SOURCES += [
|
SOURCES += [
|
||||||
'nsGNOMEShellService.cpp',
|
"nsGNOMEShellService.cpp",
|
||||||
+ 'nsKDEShellService.cpp',
|
+ "nsKDEShellService.cpp",
|
||||||
+ 'nsUnixShellService.cpp',
|
+ "nsUnixShellService.cpp",
|
||||||
]
|
]
|
||||||
if CONFIG['MOZ_ENABLE_DBUS']:
|
if CONFIG["MOZ_ENABLE_DBUS"]:
|
||||||
SOURCES += [
|
SOURCES += [
|
||||||
'nsGNOMEShellDBusHelper.cpp',
|
"nsGNOMEShellDBusHelper.cpp",
|
||||||
'nsGNOMEShellSearchProvider.cpp',
|
"nsGNOMEShellSearchProvider.cpp",
|
||||||
]
|
]
|
||||||
include('/ipc/chromium/chromium-config.mozbuild')
|
include("/ipc/chromium/chromium-config.mozbuild")
|
||||||
|
|
||||||
diff --git a/browser/components/shell/nsKDEShellService.cpp b/browser/components/shell/nsKDEShellService.cpp
|
diff --git a/browser/components/shell/nsKDEShellService.cpp b/browser/components/shell/nsKDEShellService.cpp
|
||||||
new file mode 100644
|
new file mode 100644
|
||||||
|
5
firefox-search-provider.ini
Normal file
5
firefox-search-provider.ini
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
[Shell Search Provider]
|
||||||
|
DesktopId=firefox.desktop
|
||||||
|
BusName=org.mozilla.Firefox.SearchProvider
|
||||||
|
ObjectPath=/org/mozilla/Firefox/SearchProvider
|
||||||
|
Version=2
|
@ -6,3 +6,5 @@ pref("network.trr.mode", 5);
|
|||||||
pref("extensions.autoDisableScopes", 0);
|
pref("extensions.autoDisableScopes", 0);
|
||||||
pref("extensions.shownSelectionUI", true);
|
pref("extensions.shownSelectionUI", true);
|
||||||
pref("extensions.langpacks.signatures.required", false);
|
pref("extensions.langpacks.signatures.required", false);
|
||||||
|
// enable D-Bus inteface for Gnome Shell search
|
||||||
|
pref("browser.gnome-search-provider.enabled", true);
|
||||||
|
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:3345251de218fd1c84373318f8ddc342eaf98a8bdd53ab8403b07cd5b007f022
|
|
||||||
size 49220644
|
|
3
l10n-84.0.tar.xz
Normal file
3
l10n-84.0.tar.xz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:c8391819e8c9d72260077e8d0a3538bb98f6938064916180ca64dc064397c047
|
||||||
|
size 49373248
|
@ -1,12 +1,12 @@
|
|||||||
# HG changeset patch
|
# HG changeset patch
|
||||||
# Parent e42a036a5533ea6a60ebc22fd2a150c384d42fda
|
# Parent f9f5af4c88f2f3172a4f30d7e42bd2131bf24146
|
||||||
This fixes a broken build for gcc < 9 on ppc64le.
|
This fixes a broken build for gcc < 9 on ppc64le.
|
||||||
This patch can be removed for newer gcc-versions.
|
This patch can be removed for newer gcc-versions.
|
||||||
|
|
||||||
diff --git a/js/xpconnect/src/XPCWrappedNative.cpp b/js/xpconnect/src/XPCWrappedNative.cpp
|
diff --git a/js/xpconnect/src/XPCWrappedNative.cpp b/js/xpconnect/src/XPCWrappedNative.cpp
|
||||||
--- a/js/xpconnect/src/XPCWrappedNative.cpp
|
--- a/js/xpconnect/src/XPCWrappedNative.cpp
|
||||||
+++ b/js/xpconnect/src/XPCWrappedNative.cpp
|
+++ b/js/xpconnect/src/XPCWrappedNative.cpp
|
||||||
@@ -1080,17 +1080,21 @@ class MOZ_STACK_CLASS CallMethodHelper f
|
@@ -1072,17 +1072,21 @@ class MOZ_STACK_CLASS CallMethodHelper f
|
||||||
uint32_t* result);
|
uint32_t* result);
|
||||||
|
|
||||||
MOZ_ALWAYS_INLINE bool GetInterfaceTypeFromParam(const nsXPTType& type,
|
MOZ_ALWAYS_INLINE bool GetInterfaceTypeFromParam(const nsXPTType& type,
|
||||||
@ -29,7 +29,7 @@ diff --git a/js/xpconnect/src/XPCWrappedNative.cpp b/js/xpconnect/src/XPCWrapped
|
|||||||
paramIndex += 1;
|
paramIndex += 1;
|
||||||
}
|
}
|
||||||
if (paramIndex >= mOptArgcIndex) {
|
if (paramIndex >= mOptArgcIndex) {
|
||||||
@@ -1127,17 +1131,21 @@ class MOZ_STACK_CLASS CallMethodHelper f
|
@@ -1119,17 +1123,21 @@ class MOZ_STACK_CLASS CallMethodHelper f
|
||||||
|
|
||||||
{
|
{
|
||||||
// Success checked later.
|
// Success checked later.
|
||||||
|
@ -28,12 +28,12 @@ diff --git a/python/mozbuild/mozbuild/action/langpack_manifest.py b/python/mozbu
|
|||||||
ManifestLocale,
|
ManifestLocale,
|
||||||
parse_manifest,
|
parse_manifest,
|
||||||
)
|
)
|
||||||
@@ -94,17 +95,17 @@ def get_dt_from_hg(path):
|
@@ -100,17 +101,17 @@ def get_dt_from_hg(path):
|
||||||
# ts == "20170914215617"
|
# ts == "20170914215617"
|
||||||
###
|
###
|
||||||
def get_timestamp_for_locale(path):
|
def get_timestamp_for_locale(path):
|
||||||
dt = None
|
dt = None
|
||||||
if os.path.isdir(os.path.join(path, '.hg')):
|
if os.path.isdir(os.path.join(path, ".hg")):
|
||||||
dt = get_dt_from_hg(path)
|
dt = get_dt_from_hg(path)
|
||||||
|
|
||||||
if dt is None:
|
if dt is None:
|
||||||
|
@ -8,28 +8,50 @@ Subject: [PATCH] Fix top-level asm issue.
|
|||||||
1 file changed, 4 insertions(+), 1 deletion(-)
|
1 file changed, 4 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
diff --git a/security/sandbox/linux/moz.build b/security/sandbox/linux/moz.build
|
diff --git a/security/sandbox/linux/moz.build b/security/sandbox/linux/moz.build
|
||||||
index aae85843e9f6..208368dfd189 100644
|
|
||||||
--- a/security/sandbox/linux/moz.build
|
--- a/security/sandbox/linux/moz.build
|
||||||
+++ b/security/sandbox/linux/moz.build
|
+++ b/security/sandbox/linux/moz.build
|
||||||
@@ -61,7 +61,6 @@ UNIFIED_SOURCES += [
|
@@ -66,32 +66,32 @@ UNIFIED_SOURCES += [
|
||||||
'../chromium/sandbox/linux/bpf_dsl/policy_compiler.cc',
|
"../chromium/base/time/time_now_posix.cc",
|
||||||
'../chromium/sandbox/linux/bpf_dsl/syscall_set.cc',
|
"../chromium/sandbox/linux/bpf_dsl/bpf_dsl.cc",
|
||||||
'../chromium/sandbox/linux/seccomp-bpf/die.cc',
|
"../chromium/sandbox/linux/bpf_dsl/codegen.cc",
|
||||||
- '../chromium/sandbox/linux/seccomp-bpf/syscall.cc',
|
"../chromium/sandbox/linux/bpf_dsl/dump_bpf.cc",
|
||||||
'broker/SandboxBrokerCommon.cpp',
|
"../chromium/sandbox/linux/bpf_dsl/policy.cc",
|
||||||
'Sandbox.cpp',
|
"../chromium/sandbox/linux/bpf_dsl/policy_compiler.cc",
|
||||||
'SandboxBrokerClient.cpp',
|
"../chromium/sandbox/linux/bpf_dsl/syscall_set.cc",
|
||||||
@@ -77,6 +76,7 @@ UNIFIED_SOURCES += [
|
"../chromium/sandbox/linux/seccomp-bpf/die.cc",
|
||||||
SOURCES += [
|
- "../chromium/sandbox/linux/seccomp-bpf/syscall.cc",
|
||||||
'../chromium/base/strings/safe_sprintf.cc',
|
"broker/SandboxBrokerCommon.cpp",
|
||||||
'../chromium/base/third_party/icu/icu_utf.cc',
|
"Sandbox.cpp",
|
||||||
+ '../chromium/sandbox/linux/seccomp-bpf/syscall.cc',
|
"SandboxBrokerClient.cpp",
|
||||||
'../chromium/sandbox/linux/seccomp-bpf/trap.cc',
|
"SandboxFilter.cpp",
|
||||||
'../chromium/sandbox/linux/services/syscall_wrappers.cc',
|
"SandboxFilterUtil.cpp",
|
||||||
|
"SandboxHooks.cpp",
|
||||||
|
"SandboxInfo.cpp",
|
||||||
|
"SandboxLogging.cpp",
|
||||||
|
"SandboxOpenedFiles.cpp",
|
||||||
|
"SandboxReporterClient.cpp",
|
||||||
]
|
]
|
||||||
@@ -96,6 +96,9 @@ if CONFIG['CC_TYPE'] in ('clang', 'gcc'):
|
|
||||||
SOURCES['../chromium/sandbox/linux/services/syscall_wrappers.cc'].flags += [
|
SOURCES += [
|
||||||
'-Wno-empty-body',
|
"../chromium/base/strings/safe_sprintf.cc",
|
||||||
|
"../chromium/base/third_party/icu/icu_utf.cc",
|
||||||
|
+ "../chromium/sandbox/linux/seccomp-bpf/syscall.cc",
|
||||||
|
"../chromium/sandbox/linux/seccomp-bpf/trap.cc",
|
||||||
|
"../chromium/sandbox/linux/services/syscall_wrappers.cc",
|
||||||
|
]
|
||||||
|
|
||||||
|
# This copy of SafeSPrintf doesn't need to avoid the Chromium logging
|
||||||
|
# dependency like the one in libxul does, but this way the behavior is
|
||||||
|
# consistent. See also the comment in SandboxLogging.h.
|
||||||
|
SOURCES["../chromium/base/strings/safe_sprintf.cc"].flags += ["-DNDEBUG"]
|
||||||
|
@@ -105,16 +105,19 @@ if CONFIG["CC_TYPE"] in ("clang", "gcc")
|
||||||
|
"-Wno-unreachable-code-return"
|
||||||
|
]
|
||||||
|
|
||||||
|
if CONFIG["CC_TYPE"] in ("clang", "gcc"):
|
||||||
|
CXXFLAGS += ["-Wno-shadow"]
|
||||||
|
SOURCES["../chromium/sandbox/linux/services/syscall_wrappers.cc"].flags += [
|
||||||
|
"-Wno-empty-body",
|
||||||
]
|
]
|
||||||
+ SOURCES['../chromium/sandbox/linux/seccomp-bpf/syscall.cc'].flags += [
|
+ SOURCES['../chromium/sandbox/linux/seccomp-bpf/syscall.cc'].flags += [
|
||||||
+ '-fno-lto'
|
+ '-fno-lto'
|
||||||
@ -37,6 +59,8 @@ index aae85843e9f6..208368dfd189 100644
|
|||||||
|
|
||||||
# gcc lto likes to put the top level asm in syscall.cc in a different partition
|
# gcc lto likes to put the top level asm in syscall.cc in a different partition
|
||||||
# from the function using it which breaks the build. Work around that by
|
# from the function using it which breaks the build. Work around that by
|
||||||
--
|
# forcing there to be only one partition.
|
||||||
2.23.0
|
for f in CONFIG["OS_CXXFLAGS"]:
|
||||||
|
if f.startswith("-flto") and CONFIG["CC_TYPE"] != "clang":
|
||||||
|
LDFLAGS += ["--param lto-partitions=1"]
|
||||||
|
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
# Date 1559294891 -7200
|
# Date 1559294891 -7200
|
||||||
# Fri May 31 11:28:11 2019 +0200
|
# Fri May 31 11:28:11 2019 +0200
|
||||||
# Node ID c2aa7198fb925e7fde96abf65b6f68b9b755f112
|
# Node ID c2aa7198fb925e7fde96abf65b6f68b9b755f112
|
||||||
# Parent e89d21ead66fbb34b6349edda42748a3ad9e6136
|
# Parent 4b9aa59b15c3247d263cc32804786b3a6bff7912
|
||||||
Description: Add KDE integration to Firefox (toolkit parts)
|
Description: Add KDE integration to Firefox (toolkit parts)
|
||||||
Author: Wolfgang Rosenauer <wolfgang@rosenauer.org>
|
Author: Wolfgang Rosenauer <wolfgang@rosenauer.org>
|
||||||
Author: Lubos Lunak <lunak@suse.com>
|
Author: Lubos Lunak <lunak@suse.com>
|
||||||
@ -13,7 +13,7 @@ Bug: https://bugzilla.mozilla.org/show_bug.cgi?id=140751
|
|||||||
diff --git a/modules/libpref/Preferences.cpp b/modules/libpref/Preferences.cpp
|
diff --git a/modules/libpref/Preferences.cpp b/modules/libpref/Preferences.cpp
|
||||||
--- a/modules/libpref/Preferences.cpp
|
--- a/modules/libpref/Preferences.cpp
|
||||||
+++ b/modules/libpref/Preferences.cpp
|
+++ b/modules/libpref/Preferences.cpp
|
||||||
@@ -83,16 +83,17 @@
|
@@ -82,16 +82,17 @@
|
||||||
#include "nsXPCOM.h"
|
#include "nsXPCOM.h"
|
||||||
#include "nsXULAppAPI.h"
|
#include "nsXULAppAPI.h"
|
||||||
#include "nsZipArchive.h"
|
#include "nsZipArchive.h"
|
||||||
@ -31,7 +31,7 @@ diff --git a/modules/libpref/Preferences.cpp b/modules/libpref/Preferences.cpp
|
|||||||
#ifdef MOZ_MEMORY
|
#ifdef MOZ_MEMORY
|
||||||
# include "mozmemory.h"
|
# include "mozmemory.h"
|
||||||
#endif
|
#endif
|
||||||
@@ -4536,25 +4537,37 @@ nsresult Preferences::InitInitialObjects
|
@@ -4459,25 +4460,37 @@ nsresult Preferences::InitInitialObjects
|
||||||
// application pref files for backwards compatibility.
|
// application pref files for backwards compatibility.
|
||||||
static const char* specialFiles[] = {
|
static const char* specialFiles[] = {
|
||||||
#if defined(XP_MACOSX)
|
#if defined(XP_MACOSX)
|
||||||
@ -69,7 +69,7 @@ diff --git a/modules/libpref/Preferences.cpp b/modules/libpref/Preferences.cpp
|
|||||||
|
|
||||||
// Load jar:$app/omni.jar!/defaults/preferences/*.js
|
// Load jar:$app/omni.jar!/defaults/preferences/*.js
|
||||||
// or jar:$gre/omni.jar!/defaults/preferences/*.js.
|
// or jar:$gre/omni.jar!/defaults/preferences/*.js.
|
||||||
@@ -4600,17 +4613,17 @@ nsresult Preferences::InitInitialObjects
|
@@ -4523,17 +4536,17 @@ nsresult Preferences::InitInitialObjects
|
||||||
}
|
}
|
||||||
|
|
||||||
nsCOMPtr<nsIFile> path = do_QueryInterface(elem);
|
nsCOMPtr<nsIFile> path = do_QueryInterface(elem);
|
||||||
@ -91,13 +91,13 @@ diff --git a/modules/libpref/Preferences.cpp b/modules/libpref/Preferences.cpp
|
|||||||
diff --git a/modules/libpref/moz.build b/modules/libpref/moz.build
|
diff --git a/modules/libpref/moz.build b/modules/libpref/moz.build
|
||||||
--- a/modules/libpref/moz.build
|
--- a/modules/libpref/moz.build
|
||||||
+++ b/modules/libpref/moz.build
|
+++ b/modules/libpref/moz.build
|
||||||
@@ -118,16 +118,20 @@ EXPORTS.mozilla += [
|
@@ -116,16 +116,20 @@ EXPORTS.mozilla += [
|
||||||
]
|
]
|
||||||
EXPORTS.mozilla += sorted(['!' + g for g in gen_h])
|
EXPORTS.mozilla += sorted(["!" + g for g in gen_h])
|
||||||
|
|
||||||
UNIFIED_SOURCES += [
|
UNIFIED_SOURCES += [
|
||||||
'Preferences.cpp',
|
"Preferences.cpp",
|
||||||
'SharedPrefMap.cpp',
|
"SharedPrefMap.cpp",
|
||||||
]
|
]
|
||||||
|
|
||||||
+LOCAL_INCLUDES += [
|
+LOCAL_INCLUDES += [
|
||||||
@ -106,52 +106,52 @@ diff --git a/modules/libpref/moz.build b/modules/libpref/moz.build
|
|||||||
+
|
+
|
||||||
gen_all_tuple = tuple(gen_h + gen_cpp + gen_rs)
|
gen_all_tuple = tuple(gen_h + gen_cpp + gen_rs)
|
||||||
|
|
||||||
GeneratedFile(*gen_all_tuple, script='init/generate_static_pref_list.py',
|
GeneratedFile(
|
||||||
entry_point='emit_code', inputs=['init/StaticPrefList.yaml'])
|
*gen_all_tuple,
|
||||||
|
script="init/generate_static_pref_list.py",
|
||||||
PYTHON_UNITTEST_MANIFESTS += [
|
entry_point="emit_code",
|
||||||
'test/python.ini',
|
inputs=["init/StaticPrefList.yaml"]
|
||||||
]
|
)
|
||||||
diff --git a/python/mozbuild/mozpack/chrome/flags.py b/python/mozbuild/mozpack/chrome/flags.py
|
diff --git a/python/mozbuild/mozpack/chrome/flags.py b/python/mozbuild/mozpack/chrome/flags.py
|
||||||
--- a/python/mozbuild/mozpack/chrome/flags.py
|
--- a/python/mozbuild/mozpack/chrome/flags.py
|
||||||
+++ b/python/mozbuild/mozpack/chrome/flags.py
|
+++ b/python/mozbuild/mozpack/chrome/flags.py
|
||||||
@@ -227,16 +227,17 @@ class Flags(OrderedDict):
|
@@ -228,16 +228,17 @@ class Flags(OrderedDict):
|
||||||
'contentaccessible': Flag,
|
"contentaccessible": Flag,
|
||||||
'os': StringFlag,
|
"os": StringFlag,
|
||||||
'osversion': VersionFlag,
|
"osversion": VersionFlag,
|
||||||
'abi': StringFlag,
|
"abi": StringFlag,
|
||||||
'platform': Flag,
|
"platform": Flag,
|
||||||
'xpcnativewrappers': Flag,
|
"xpcnativewrappers": Flag,
|
||||||
'tablet': Flag,
|
"tablet": Flag,
|
||||||
'process': StringFlag,
|
"process": StringFlag,
|
||||||
+ 'desktop': StringFlag,
|
+ "desktop": StringFlag,
|
||||||
}
|
}
|
||||||
RE = re.compile(r'([!<>=]+)')
|
RE = re.compile(r"([!<>=]+)")
|
||||||
|
|
||||||
def __init__(self, *flags):
|
def __init__(self, *flags):
|
||||||
'''
|
"""
|
||||||
Initialize a set of flags given in string form.
|
Initialize a set of flags given in string form.
|
||||||
flags = Flags('contentaccessible=yes', 'appversion>=3.5')
|
flags = Flags('contentaccessible=yes', 'appversion>=3.5')
|
||||||
'''
|
"""
|
||||||
diff --git a/python/mozbuild/mozpack/chrome/manifest.py b/python/mozbuild/mozpack/chrome/manifest.py
|
diff --git a/python/mozbuild/mozpack/chrome/manifest.py b/python/mozbuild/mozpack/chrome/manifest.py
|
||||||
--- a/python/mozbuild/mozpack/chrome/manifest.py
|
--- a/python/mozbuild/mozpack/chrome/manifest.py
|
||||||
+++ b/python/mozbuild/mozpack/chrome/manifest.py
|
+++ b/python/mozbuild/mozpack/chrome/manifest.py
|
||||||
@@ -37,16 +37,17 @@ class ManifestEntry(object):
|
@@ -38,16 +38,17 @@ class ManifestEntry(object):
|
||||||
'platformversion',
|
"platformversion",
|
||||||
'os',
|
"os",
|
||||||
'osversion',
|
"osversion",
|
||||||
'abi',
|
"abi",
|
||||||
'xpcnativewrappers',
|
"xpcnativewrappers",
|
||||||
'tablet',
|
"tablet",
|
||||||
'process',
|
"process",
|
||||||
'contentaccessible',
|
"contentaccessible",
|
||||||
+ 'desktop',
|
+ "desktop",
|
||||||
]
|
]
|
||||||
|
|
||||||
def __init__(self, base, *flags):
|
def __init__(self, base, *flags):
|
||||||
'''
|
"""
|
||||||
Initialize a manifest entry with the given base path and flags.
|
Initialize a manifest entry with the given base path and flags.
|
||||||
'''
|
"""
|
||||||
self.base = base
|
self.base = base
|
||||||
self.flags = Flags(*flags)
|
self.flags = Flags(*flags)
|
||||||
diff --git a/toolkit/components/downloads/moz.build b/toolkit/components/downloads/moz.build
|
diff --git a/toolkit/components/downloads/moz.build b/toolkit/components/downloads/moz.build
|
||||||
@ -159,23 +159,23 @@ diff --git a/toolkit/components/downloads/moz.build b/toolkit/components/downloa
|
|||||||
+++ b/toolkit/components/downloads/moz.build
|
+++ b/toolkit/components/downloads/moz.build
|
||||||
@@ -45,10 +45,14 @@ XPCOM_MANIFESTS += [
|
@@ -45,10 +45,14 @@ XPCOM_MANIFESTS += [
|
||||||
|
|
||||||
if CONFIG['MOZ_PLACES']:
|
if CONFIG["MOZ_PLACES"]:
|
||||||
EXTRA_JS_MODULES += [
|
EXTRA_JS_MODULES += [
|
||||||
'DownloadHistory.jsm',
|
"DownloadHistory.jsm",
|
||||||
]
|
]
|
||||||
|
|
||||||
FINAL_LIBRARY = 'xul'
|
FINAL_LIBRARY = "xul"
|
||||||
|
|
||||||
+LOCAL_INCLUDES += [
|
+LOCAL_INCLUDES += [
|
||||||
+ '/toolkit/xre'
|
+ '/toolkit/xre'
|
||||||
+]
|
+]
|
||||||
+
|
+
|
||||||
with Files('**'):
|
with Files("**"):
|
||||||
BUG_COMPONENT = ('Toolkit', 'Downloads API')
|
BUG_COMPONENT = ("Toolkit", "Downloads API")
|
||||||
diff --git a/toolkit/mozapps/downloads/HelperAppDlg.jsm b/toolkit/mozapps/downloads/HelperAppDlg.jsm
|
diff --git a/toolkit/mozapps/downloads/HelperAppDlg.jsm b/toolkit/mozapps/downloads/HelperAppDlg.jsm
|
||||||
--- a/toolkit/mozapps/downloads/HelperAppDlg.jsm
|
--- a/toolkit/mozapps/downloads/HelperAppDlg.jsm
|
||||||
+++ b/toolkit/mozapps/downloads/HelperAppDlg.jsm
|
+++ b/toolkit/mozapps/downloads/HelperAppDlg.jsm
|
||||||
@@ -1239,36 +1239,66 @@ nsUnknownContentTypeDialog.prototype = {
|
@@ -1243,36 +1243,66 @@ nsUnknownContentTypeDialog.prototype = {
|
||||||
params.handlerApp &&
|
params.handlerApp &&
|
||||||
params.handlerApp.executable &&
|
params.handlerApp.executable &&
|
||||||
params.handlerApp.executable.isFile()
|
params.handlerApp.executable.isFile()
|
||||||
@ -356,26 +356,26 @@ diff --git a/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp b/toolkit/sy
|
|||||||
diff --git a/toolkit/xre/moz.build b/toolkit/xre/moz.build
|
diff --git a/toolkit/xre/moz.build b/toolkit/xre/moz.build
|
||||||
--- a/toolkit/xre/moz.build
|
--- a/toolkit/xre/moz.build
|
||||||
+++ b/toolkit/xre/moz.build
|
+++ b/toolkit/xre/moz.build
|
||||||
@@ -90,17 +90,19 @@ elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'co
|
@@ -91,17 +91,19 @@ elif CONFIG["MOZ_WIDGET_TOOLKIT"] == "co
|
||||||
'../components/printingui',
|
"../components/printingui",
|
||||||
]
|
]
|
||||||
elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'uikit':
|
elif CONFIG["MOZ_WIDGET_TOOLKIT"] == "uikit":
|
||||||
UNIFIED_SOURCES += [
|
UNIFIED_SOURCES += [
|
||||||
'nsNativeAppSupportDefault.cpp',
|
"nsNativeAppSupportDefault.cpp",
|
||||||
'UIKitDirProvider.mm',
|
"UIKitDirProvider.mm",
|
||||||
]
|
]
|
||||||
elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'gtk':
|
elif CONFIG["MOZ_WIDGET_TOOLKIT"] == "gtk":
|
||||||
+ EXPORTS += ['nsKDEUtils.h']
|
+ EXPORTS += ['nsKDEUtils.h']
|
||||||
UNIFIED_SOURCES += [
|
UNIFIED_SOURCES += [
|
||||||
+ 'nsKDEUtils.cpp',
|
+ "nsKDEUtils.cpp",
|
||||||
'nsNativeAppSupportUnix.cpp',
|
"nsNativeAppSupportUnix.cpp",
|
||||||
]
|
]
|
||||||
else:
|
else:
|
||||||
UNIFIED_SOURCES += [
|
UNIFIED_SOURCES += [
|
||||||
'nsNativeAppSupportDefault.cpp',
|
"nsNativeAppSupportDefault.cpp",
|
||||||
]
|
]
|
||||||
|
|
||||||
if CONFIG['MOZ_HAS_REMOTE']:
|
if CONFIG["MOZ_HAS_REMOTE"]:
|
||||||
diff --git a/toolkit/xre/nsKDEUtils.cpp b/toolkit/xre/nsKDEUtils.cpp
|
diff --git a/toolkit/xre/nsKDEUtils.cpp b/toolkit/xre/nsKDEUtils.cpp
|
||||||
new file mode 100644
|
new file mode 100644
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
@ -841,44 +841,44 @@ diff --git a/uriloader/exthandler/HandlerServiceParent.cpp b/uriloader/exthandle
|
|||||||
diff --git a/uriloader/exthandler/moz.build b/uriloader/exthandler/moz.build
|
diff --git a/uriloader/exthandler/moz.build b/uriloader/exthandler/moz.build
|
||||||
--- a/uriloader/exthandler/moz.build
|
--- a/uriloader/exthandler/moz.build
|
||||||
+++ b/uriloader/exthandler/moz.build
|
+++ b/uriloader/exthandler/moz.build
|
||||||
@@ -85,17 +85,19 @@ else:
|
@@ -86,17 +86,19 @@ else:
|
||||||
SOURCES += [
|
SOURCES += [
|
||||||
osdir + '/nsOSHelperAppService.cpp',
|
osdir + "/nsOSHelperAppService.cpp",
|
||||||
]
|
]
|
||||||
if CONFIG['CC_TYPE'] in ('clang', 'gcc'):
|
if CONFIG["CC_TYPE"] in ("clang", "gcc"):
|
||||||
CXXFLAGS += ['-Wno-error=shadow']
|
CXXFLAGS += ["-Wno-error=shadow"]
|
||||||
|
|
||||||
if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'gtk':
|
if CONFIG["MOZ_WIDGET_TOOLKIT"] == "gtk":
|
||||||
UNIFIED_SOURCES += [
|
UNIFIED_SOURCES += [
|
||||||
+ 'unix/nsCommonRegistry.cpp',
|
+ "unix/nsCommonRegistry.cpp",
|
||||||
'unix/nsGNOMERegistry.cpp',
|
"unix/nsGNOMERegistry.cpp",
|
||||||
+ 'unix/nsKDERegistry.cpp',
|
+ "unix/nsKDERegistry.cpp",
|
||||||
'unix/nsMIMEInfoUnix.cpp',
|
"unix/nsMIMEInfoUnix.cpp",
|
||||||
]
|
]
|
||||||
elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'android':
|
elif CONFIG["MOZ_WIDGET_TOOLKIT"] == "android":
|
||||||
UNIFIED_SOURCES += [
|
UNIFIED_SOURCES += [
|
||||||
'android/nsAndroidHandlerApp.cpp',
|
"android/nsAndroidHandlerApp.cpp",
|
||||||
'android/nsExternalURLHandlerService.cpp',
|
"android/nsExternalURLHandlerService.cpp",
|
||||||
'android/nsMIMEInfoAndroid.cpp',
|
"android/nsMIMEInfoAndroid.cpp",
|
||||||
]
|
]
|
||||||
@@ -135,16 +137,17 @@ include('/ipc/chromium/chromium-config.m
|
@@ -136,16 +138,17 @@ include("/ipc/chromium/chromium-config.m
|
||||||
FINAL_LIBRARY = 'xul'
|
FINAL_LIBRARY = "xul"
|
||||||
|
|
||||||
LOCAL_INCLUDES += [
|
LOCAL_INCLUDES += [
|
||||||
'/docshell/base',
|
"/docshell/base",
|
||||||
'/dom/base',
|
"/dom/base",
|
||||||
'/dom/ipc',
|
"/dom/ipc",
|
||||||
'/netwerk/base',
|
"/netwerk/base",
|
||||||
'/netwerk/protocol/http',
|
"/netwerk/protocol/http",
|
||||||
+ '/toolkit/xre',
|
+ "/toolkit/xre",
|
||||||
]
|
]
|
||||||
|
|
||||||
if CONFIG['MOZ_ENABLE_DBUS']:
|
if CONFIG["MOZ_ENABLE_DBUS"]:
|
||||||
CXXFLAGS += CONFIG['TK_CFLAGS']
|
CXXFLAGS += CONFIG["TK_CFLAGS"]
|
||||||
CXXFLAGS += CONFIG['MOZ_DBUS_CFLAGS']
|
CXXFLAGS += CONFIG["MOZ_DBUS_CFLAGS"]
|
||||||
|
|
||||||
if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'gtk':
|
if CONFIG["MOZ_WIDGET_TOOLKIT"] == "gtk":
|
||||||
CXXFLAGS += CONFIG['TK_CFLAGS']
|
CXXFLAGS += CONFIG["TK_CFLAGS"]
|
||||||
diff --git a/uriloader/exthandler/unix/nsCommonRegistry.cpp b/uriloader/exthandler/unix/nsCommonRegistry.cpp
|
diff --git a/uriloader/exthandler/unix/nsCommonRegistry.cpp b/uriloader/exthandler/unix/nsCommonRegistry.cpp
|
||||||
new file mode 100644
|
new file mode 100644
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
@ -1293,23 +1293,23 @@ diff --git a/uriloader/exthandler/unix/nsOSHelperAppService.cpp b/uriloader/exth
|
|||||||
diff --git a/widget/gtk/moz.build b/widget/gtk/moz.build
|
diff --git a/widget/gtk/moz.build b/widget/gtk/moz.build
|
||||||
--- a/widget/gtk/moz.build
|
--- a/widget/gtk/moz.build
|
||||||
+++ b/widget/gtk/moz.build
|
+++ b/widget/gtk/moz.build
|
||||||
@@ -134,16 +134,17 @@ FINAL_LIBRARY = 'xul'
|
@@ -138,16 +138,17 @@ FINAL_LIBRARY = "xul"
|
||||||
|
|
||||||
LOCAL_INCLUDES += [
|
LOCAL_INCLUDES += [
|
||||||
'/layout/base',
|
"/layout/base",
|
||||||
'/layout/forms',
|
"/layout/forms",
|
||||||
'/layout/generic',
|
"/layout/generic",
|
||||||
'/layout/xul',
|
"/layout/xul",
|
||||||
'/other-licenses/atk-1.0',
|
"/other-licenses/atk-1.0",
|
||||||
'/third_party/cups/include',
|
"/third_party/cups/include",
|
||||||
+ '/toolkit/xre',
|
+ "/toolkit/xre",
|
||||||
'/widget',
|
"/widget",
|
||||||
'/widget/headless',
|
"/widget/headless",
|
||||||
]
|
]
|
||||||
|
|
||||||
if CONFIG['MOZ_X11']:
|
if CONFIG["MOZ_X11"]:
|
||||||
LOCAL_INCLUDES += [
|
LOCAL_INCLUDES += [
|
||||||
'/widget/x11',
|
"/widget/x11",
|
||||||
]
|
]
|
||||||
diff --git a/widget/gtk/nsFilePicker.cpp b/widget/gtk/nsFilePicker.cpp
|
diff --git a/widget/gtk/nsFilePicker.cpp b/widget/gtk/nsFilePicker.cpp
|
||||||
--- a/widget/gtk/nsFilePicker.cpp
|
--- a/widget/gtk/nsFilePicker.cpp
|
||||||
@ -1816,28 +1816,28 @@ diff --git a/xpcom/components/ManifestParser.cpp b/xpcom/components/ManifestPars
|
|||||||
diff --git a/xpcom/components/moz.build b/xpcom/components/moz.build
|
diff --git a/xpcom/components/moz.build b/xpcom/components/moz.build
|
||||||
--- a/xpcom/components/moz.build
|
--- a/xpcom/components/moz.build
|
||||||
+++ b/xpcom/components/moz.build
|
+++ b/xpcom/components/moz.build
|
||||||
@@ -62,16 +62,17 @@ LOCAL_INCLUDES += [
|
@@ -66,16 +66,17 @@ LOCAL_INCLUDES += [
|
||||||
'!..',
|
"!..",
|
||||||
'../base',
|
"../base",
|
||||||
'../build',
|
"../build",
|
||||||
'../ds',
|
"../ds",
|
||||||
'/chrome',
|
"/chrome",
|
||||||
'/js/xpconnect/loader',
|
"/js/xpconnect/loader",
|
||||||
'/layout/build',
|
"/layout/build",
|
||||||
'/modules/libjar',
|
"/modules/libjar",
|
||||||
+ '/toolkit/xre',
|
+ "/toolkit/xre",
|
||||||
]
|
]
|
||||||
|
|
||||||
if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'gtk':
|
if CONFIG["MOZ_WIDGET_TOOLKIT"] == "gtk":
|
||||||
CXXFLAGS += CONFIG['TK_CFLAGS']
|
CXXFLAGS += CONFIG["TK_CFLAGS"]
|
||||||
if CONFIG['MOZ_ENABLE_DBUS']:
|
if CONFIG["MOZ_ENABLE_DBUS"]:
|
||||||
CXXFLAGS += CONFIG['MOZ_DBUS_GLIB_CFLAGS']
|
CXXFLAGS += CONFIG["MOZ_DBUS_GLIB_CFLAGS"]
|
||||||
|
|
||||||
include('/ipc/chromium/chromium-config.mozbuild')
|
include("/ipc/chromium/chromium-config.mozbuild")
|
||||||
diff --git a/xpcom/io/nsLocalFileUnix.cpp b/xpcom/io/nsLocalFileUnix.cpp
|
diff --git a/xpcom/io/nsLocalFileUnix.cpp b/xpcom/io/nsLocalFileUnix.cpp
|
||||||
--- a/xpcom/io/nsLocalFileUnix.cpp
|
--- a/xpcom/io/nsLocalFileUnix.cpp
|
||||||
+++ b/xpcom/io/nsLocalFileUnix.cpp
|
+++ b/xpcom/io/nsLocalFileUnix.cpp
|
||||||
@@ -46,16 +46,17 @@
|
@@ -49,16 +49,17 @@
|
||||||
#include "prproces.h"
|
#include "prproces.h"
|
||||||
#include "nsIDirectoryEnumerator.h"
|
#include "nsIDirectoryEnumerator.h"
|
||||||
#include "nsSimpleEnumerator.h"
|
#include "nsSimpleEnumerator.h"
|
||||||
@ -1855,7 +1855,7 @@ diff --git a/xpcom/io/nsLocalFileUnix.cpp b/xpcom/io/nsLocalFileUnix.cpp
|
|||||||
# include "prmem.h"
|
# include "prmem.h"
|
||||||
# include "plbase64.h"
|
# include "plbase64.h"
|
||||||
|
|
||||||
@@ -1898,62 +1899,77 @@ nsLocalFile::SetPersistentDescriptor(con
|
@@ -1968,62 +1969,77 @@ nsLocalFile::SetPersistentDescriptor(con
|
||||||
|
|
||||||
NS_IMETHODIMP
|
NS_IMETHODIMP
|
||||||
nsLocalFile::Reveal() {
|
nsLocalFile::Reveal() {
|
||||||
|
225
mozilla-pgo.patch
Normal file
225
mozilla-pgo.patch
Normal file
@ -0,0 +1,225 @@
|
|||||||
|
# HG changeset patch
|
||||||
|
# User Wolfgang Rosenauer <wr@rosenauer.org>
|
||||||
|
# Parent 431962e810598b34327620fb99e06768e9a29c38
|
||||||
|
|
||||||
|
diff --git a/build/moz.configure/lto-pgo.configure b/build/moz.configure/lto-pgo.configure
|
||||||
|
--- a/build/moz.configure/lto-pgo.configure
|
||||||
|
+++ b/build/moz.configure/lto-pgo.configure
|
||||||
|
@@ -223,23 +223,23 @@ def lto(value, c_compiler, ld64_known_go
|
||||||
|
"configure."
|
||||||
|
)
|
||||||
|
|
||||||
|
if c_compiler.type == "clang":
|
||||||
|
if len(value) and value[0].lower() == "full":
|
||||||
|
cflags.append("-flto")
|
||||||
|
ldflags.append("-flto")
|
||||||
|
else:
|
||||||
|
- cflags.append("-flto=thin")
|
||||||
|
- ldflags.append("-flto=thin")
|
||||||
|
+ cflags.append("-flto")
|
||||||
|
+ ldflags.append("-flto")
|
||||||
|
elif c_compiler.type == "clang-cl":
|
||||||
|
if len(value) and value[0].lower() == "full":
|
||||||
|
cflags.append("-flto")
|
||||||
|
else:
|
||||||
|
- cflags.append("-flto=thin")
|
||||||
|
+ cflags.append("-flto")
|
||||||
|
# With clang-cl, -flto can only be used with -c or -fuse-ld=lld.
|
||||||
|
# AC_TRY_LINKs during configure don't have -c, so pass -fuse-ld=lld.
|
||||||
|
cflags.append("-fuse-ld=lld")
|
||||||
|
|
||||||
|
# Explicitly set the CPU to optimize for so the linker doesn't
|
||||||
|
# choose a poor default. Rust compilation by default uses the
|
||||||
|
# pentium4 CPU on x86:
|
||||||
|
#
|
||||||
|
@@ -263,17 +263,17 @@ def lto(value, c_compiler, ld64_known_go
|
||||||
|
ldflags.append("-mllvm:-mcpu=x86-64")
|
||||||
|
# We do not need special flags for arm64. Hooray for fixed-length
|
||||||
|
# instruction sets.
|
||||||
|
else:
|
||||||
|
num_cores = multiprocessing.cpu_count()
|
||||||
|
if len(value) and value[0].lower() == "full":
|
||||||
|
cflags.append("-flto")
|
||||||
|
else:
|
||||||
|
- cflags.append("-flto=thin")
|
||||||
|
+ cflags.append("-flto")
|
||||||
|
cflags.append("-flifetime-dse=1")
|
||||||
|
|
||||||
|
ldflags.append("-flto=%s" % num_cores)
|
||||||
|
ldflags.append("-flifetime-dse=1")
|
||||||
|
|
||||||
|
# Tell LTO not to inline functions above a certain size, to mitigate
|
||||||
|
# binary size growth while still getting good performance.
|
||||||
|
# (For hot functions, PGO will put a multiplier on this limit.)
|
||||||
|
diff --git a/build/pgo/profileserver.py b/build/pgo/profileserver.py
|
||||||
|
--- a/build/pgo/profileserver.py
|
||||||
|
+++ b/build/pgo/profileserver.py
|
||||||
|
@@ -6,17 +6,17 @@
|
||||||
|
|
||||||
|
import json
|
||||||
|
import os
|
||||||
|
import sys
|
||||||
|
import glob
|
||||||
|
import subprocess
|
||||||
|
|
||||||
|
import mozcrash
|
||||||
|
-from mozbuild.base import MozbuildObject, BinaryNotFoundException
|
||||||
|
+from mozbuild.base import MozbuildObject, BinaryNotFoundException, BuildEnvironmentNotFoundException
|
||||||
|
from mozfile import TemporaryDirectory
|
||||||
|
from mozhttpd import MozHttpd
|
||||||
|
from mozprofile import FirefoxProfile, Preferences
|
||||||
|
from mozprofile.permissions import ServerLocations
|
||||||
|
from mozrunner import FirefoxRunner, CLI
|
||||||
|
from six import string_types
|
||||||
|
|
||||||
|
PORT = 8888
|
||||||
|
@@ -82,19 +82,32 @@ if __name__ == "__main__":
|
||||||
|
docroot=os.path.join(build.topsrcdir, "build", "pgo"),
|
||||||
|
path_mappings=path_mappings,
|
||||||
|
)
|
||||||
|
httpd.start(block=False)
|
||||||
|
|
||||||
|
locations = ServerLocations()
|
||||||
|
locations.add_host(host="127.0.0.1", port=PORT, options="primary,privileged")
|
||||||
|
|
||||||
|
- old_profraw_files = glob.glob("*.profraw")
|
||||||
|
- for f in old_profraw_files:
|
||||||
|
- os.remove(f)
|
||||||
|
+ using_gcc = False
|
||||||
|
+ try:
|
||||||
|
+ if build.config_environment.substs.get('CC_TYPE') == 'gcc':
|
||||||
|
+ using_gcc = True
|
||||||
|
+ except BuildEnvironmentNotFoundException:
|
||||||
|
+ pass
|
||||||
|
+
|
||||||
|
+ if using_gcc:
|
||||||
|
+ for dirpath, _, filenames in os.walk('.'):
|
||||||
|
+ for f in filenames:
|
||||||
|
+ if f.endswith('.gcda'):
|
||||||
|
+ os.remove(os.path.join(dirpath, f))
|
||||||
|
+ else:
|
||||||
|
+ old_profraw_files = glob.glob('*.profraw')
|
||||||
|
+ for f in old_profraw_files:
|
||||||
|
+ os.remove(f)
|
||||||
|
|
||||||
|
with TemporaryDirectory() as profilePath:
|
||||||
|
# TODO: refactor this into mozprofile
|
||||||
|
profile_data_dir = os.path.join(build.topsrcdir, "testing", "profiles")
|
||||||
|
with open(os.path.join(profile_data_dir, "profiles.json"), "r") as fh:
|
||||||
|
base_profiles = json.load(fh)["profileserver"]
|
||||||
|
|
||||||
|
prefpaths = [
|
||||||
|
@@ -207,16 +220,20 @@ if __name__ == "__main__":
|
||||||
|
|
||||||
|
# Try to move the crash reports to the artifacts even if Firefox appears
|
||||||
|
# to exit successfully, in case there's a crash that doesn't set the
|
||||||
|
# return code to non-zero for some reason.
|
||||||
|
if get_crashreports(profilePath, name="Firefox exited successfully?") != 0:
|
||||||
|
print("Firefox exited successfully, but produced a crashreport")
|
||||||
|
sys.exit(1)
|
||||||
|
|
||||||
|
+ print('Copying profile data....')
|
||||||
|
+ os.system('pwd');
|
||||||
|
+ os.system('tar cf profdata.tar.gz `find . -name "*.gcda"`; cd ..; tar xf instrumented/profdata.tar.gz;');
|
||||||
|
+
|
||||||
|
llvm_profdata = env.get("LLVM_PROFDATA")
|
||||||
|
if llvm_profdata:
|
||||||
|
profraw_files = glob.glob("*.profraw")
|
||||||
|
if not profraw_files:
|
||||||
|
print(
|
||||||
|
"Could not find profraw files in the current directory: %s"
|
||||||
|
% os.getcwd()
|
||||||
|
)
|
||||||
|
diff --git a/build/unix/mozconfig.unix b/build/unix/mozconfig.unix
|
||||||
|
--- a/build/unix/mozconfig.unix
|
||||||
|
+++ b/build/unix/mozconfig.unix
|
||||||
|
@@ -1,16 +1,25 @@
|
||||||
|
. "$topsrcdir/build/mozconfig.common"
|
||||||
|
|
||||||
|
TOOLTOOL_DIR=${TOOLTOOL_DIR:-$topsrcdir}
|
||||||
|
|
||||||
|
if [ -n "$FORCE_GCC" ]; then
|
||||||
|
CC="$MOZ_FETCHES_DIR/gcc/bin/gcc"
|
||||||
|
CXX="$MOZ_FETCHES_DIR/gcc/bin/g++"
|
||||||
|
|
||||||
|
+ if [ -n "$MOZ_PGO" ]; then
|
||||||
|
+ if [ -z "$USE_ARTIFACT" ]; then
|
||||||
|
+ ac_add_options --enable-lto
|
||||||
|
+ fi
|
||||||
|
+ export AR="$topsrcdir/gcc/bin/gcc-ar"
|
||||||
|
+ export NM="$topsrcdir/gcc/bin/gcc-nm"
|
||||||
|
+ export RANLIB="$topsrcdir/gcc/bin/gcc-ranlib"
|
||||||
|
+ fi
|
||||||
|
+
|
||||||
|
# We want to make sure we use binutils and other binaries in the tooltool
|
||||||
|
# package.
|
||||||
|
mk_add_options "export PATH=$MOZ_FETCHES_DIR/gcc/bin:$PATH"
|
||||||
|
ac_add_options --with-clang-path=$MOZ_FETCHES_DIR/clang/bin/clang
|
||||||
|
else
|
||||||
|
CC="$MOZ_FETCHES_DIR/clang/bin/clang"
|
||||||
|
CXX="$MOZ_FETCHES_DIR/clang/bin/clang++"
|
||||||
|
|
||||||
|
diff --git a/extensions/spellcheck/src/moz.build b/extensions/spellcheck/src/moz.build
|
||||||
|
--- a/extensions/spellcheck/src/moz.build
|
||||||
|
+++ b/extensions/spellcheck/src/moz.build
|
||||||
|
@@ -26,8 +26,10 @@ LOCAL_INCLUDES += [
|
||||||
|
]
|
||||||
|
EXPORTS.mozilla += [
|
||||||
|
"mozInlineSpellChecker.h",
|
||||||
|
"mozSpellChecker.h",
|
||||||
|
]
|
||||||
|
|
||||||
|
if CONFIG["CC_TYPE"] in ("clang", "gcc"):
|
||||||
|
CXXFLAGS += ["-Wno-error=shadow"]
|
||||||
|
+
|
||||||
|
+CXXFLAGS += ['-fno-devirtualize']
|
||||||
|
diff --git a/python/mozbuild/mozbuild/build_commands.py b/python/mozbuild/mozbuild/build_commands.py
|
||||||
|
--- a/python/mozbuild/mozbuild/build_commands.py
|
||||||
|
+++ b/python/mozbuild/mozbuild/build_commands.py
|
||||||
|
@@ -121,19 +121,18 @@ class Build(MachCommandBase):
|
||||||
|
silent=not verbose,
|
||||||
|
ensure_exit_code=False,
|
||||||
|
append_env=append_env,
|
||||||
|
)
|
||||||
|
if status != 0:
|
||||||
|
return status
|
||||||
|
|
||||||
|
pgo_env = os.environ.copy()
|
||||||
|
- pgo_env["LLVM_PROFDATA"] = instr.config_environment.substs.get(
|
||||||
|
- "LLVM_PROFDATA"
|
||||||
|
- )
|
||||||
|
+ if instr.config_environment.substs.get('CC_TYPE') != 'gcc':
|
||||||
|
+ pgo_env["LLVM_PROFDATA"] = instr.config_environment.substs.get("LLVM_PROFDATA")
|
||||||
|
pgo_env["JARLOG_FILE"] = mozpath.join(orig_topobjdir, "jarlog/en-US.log")
|
||||||
|
pgo_cmd = [
|
||||||
|
instr.virtualenv_manager.python_path,
|
||||||
|
mozpath.join(self.topsrcdir, "build/pgo/profileserver.py"),
|
||||||
|
]
|
||||||
|
subprocess.check_call(
|
||||||
|
pgo_cmd, cwd=instr.topobjdir, env=ensure_subprocess_env(pgo_env)
|
||||||
|
)
|
||||||
|
diff --git a/toolkit/components/terminator/nsTerminator.cpp b/toolkit/components/terminator/nsTerminator.cpp
|
||||||
|
--- a/toolkit/components/terminator/nsTerminator.cpp
|
||||||
|
+++ b/toolkit/components/terminator/nsTerminator.cpp
|
||||||
|
@@ -413,16 +413,21 @@ void nsTerminator::StartWatchdog() {
|
||||||
|
// Defend against overflow
|
||||||
|
crashAfterMS = INT32_MAX;
|
||||||
|
} else {
|
||||||
|
crashAfterMS *= scaleUp;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
+ // Disable watchdog for PGO train builds - writting profile information at
|
||||||
|
+ // exit may take time and it is better to make build hang rather than
|
||||||
|
+ // silently produce poorly performing binary.
|
||||||
|
+ crashAfterMS = INT32_MAX;
|
||||||
|
+
|
||||||
|
UniquePtr<Options> options(new Options());
|
||||||
|
const PRIntervalTime ticksDuration = PR_MillisecondsToInterval(1000);
|
||||||
|
options->crashAfterTicks = crashAfterMS / ticksDuration;
|
||||||
|
// Handle systems where ticksDuration is greater than crashAfterMS.
|
||||||
|
if (options->crashAfterTicks == 0) {
|
||||||
|
options->crashAfterTicks = crashAfterMS / 1000;
|
||||||
|
}
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
@ -3,7 +3,7 @@
|
|||||||
# Date 1560754926 -7200
|
# Date 1560754926 -7200
|
||||||
# Mon Jun 17 09:02:06 2019 +0200
|
# Mon Jun 17 09:02:06 2019 +0200
|
||||||
# Node ID 428161c3b9599083e1b8710eda1760f1f707ab11
|
# Node ID 428161c3b9599083e1b8710eda1760f1f707ab11
|
||||||
# Parent 83625bab561d09fb68aa2c71cea7cbafd9ec09b4
|
# Parent f5e9431a99bb1d122ccd76411f08ac6f3236c19f
|
||||||
#Description: reduce the rust debuginfo level on selected architectures where
|
#Description: reduce the rust debuginfo level on selected architectures where
|
||||||
# compiling with debuginfo=2 causes the OOM killer to interrupt the build on
|
# compiling with debuginfo=2 causes the OOM killer to interrupt the build on
|
||||||
# launchpad builders. Initially this was only on 32 bit architectures, but with
|
# launchpad builders. Initially this was only on 32 bit architectures, but with
|
||||||
@ -12,18 +12,19 @@
|
|||||||
diff --git a/build/moz.configure/toolchain.configure b/build/moz.configure/toolchain.configure
|
diff --git a/build/moz.configure/toolchain.configure b/build/moz.configure/toolchain.configure
|
||||||
--- a/build/moz.configure/toolchain.configure
|
--- a/build/moz.configure/toolchain.configure
|
||||||
+++ b/build/moz.configure/toolchain.configure
|
+++ b/build/moz.configure/toolchain.configure
|
||||||
@@ -1823,18 +1823,18 @@ imply_option('RUSTC_OPT_LEVEL', '2', whe
|
@@ -2138,19 +2138,19 @@ imply_option("RUSTC_OPT_LEVEL", "2", whe
|
||||||
@depends('RUSTC_OPT_LEVEL', moz_optimize)
|
|
||||||
def rustc_opt_level(opt_level_option, moz_optimize):
|
def rustc_opt_level(opt_level_option, moz_optimize):
|
||||||
if opt_level_option:
|
if opt_level_option:
|
||||||
return opt_level_option[0]
|
return opt_level_option[0]
|
||||||
else:
|
else:
|
||||||
return '1' if moz_optimize.optimize else '0'
|
return "1" if moz_optimize.optimize else "0"
|
||||||
|
|
||||||
|
|
||||||
-@depends(rustc_opt_level, debug_rust, '--enable-debug-symbols', '--enable-frame-pointers')
|
@depends(
|
||||||
|
- rustc_opt_level, debug_rust, "--enable-debug-symbols", "--enable-frame-pointers"
|
||||||
|
+ rustc_opt_level, debug_rust, "--enable-debug-symbols", "--enable-frame-pointers", host
|
||||||
|
)
|
||||||
-def rust_compile_flags(opt_level, debug_rust, debug_symbols, frame_pointers):
|
-def rust_compile_flags(opt_level, debug_rust, debug_symbols, frame_pointers):
|
||||||
+@depends(rustc_opt_level, debug_rust, '--enable-debug-symbols', '--enable-frame-pointers', host)
|
|
||||||
+def rust_compile_flags(opt_level, debug_rust, debug_symbols, frame_pointers, host):
|
+def rust_compile_flags(opt_level, debug_rust, debug_symbols, frame_pointers, host):
|
||||||
# Cargo currently supports only two interesting profiles for building:
|
# Cargo currently supports only two interesting profiles for building:
|
||||||
# development and release. Those map (roughly) to --enable-debug and
|
# development and release. Those map (roughly) to --enable-debug and
|
||||||
@ -33,22 +34,22 @@ diff --git a/build/moz.configure/toolchain.configure b/build/moz.configure/toolc
|
|||||||
# optimization level. Since Cargo only supports 2 profiles, we're in
|
# optimization level. Since Cargo only supports 2 profiles, we're in
|
||||||
# a bit of a bind.
|
# a bit of a bind.
|
||||||
#
|
#
|
||||||
@@ -1847,16 +1847,18 @@ def rust_compile_flags(opt_level, debug_
|
@@ -2163,16 +2163,18 @@ def rust_compile_flags(opt_level, debug_
|
||||||
|
|
||||||
# opt-level=0 implies -C debug-assertions, which may not be desired
|
# opt-level=0 implies -C debug-assertions, which may not be desired
|
||||||
# unless Rust debugging is enabled.
|
# unless Rust debugging is enabled.
|
||||||
if opt_level == '0' and not debug_rust:
|
if opt_level == "0" and not debug_rust:
|
||||||
debug_assertions = False
|
debug_assertions = False
|
||||||
|
|
||||||
if debug_symbols:
|
if debug_symbols:
|
||||||
debug_info = '2'
|
debug_info = "2"
|
||||||
+ if host.bitness == 32 or host.cpu == 'aarch64' or host.cpu == 'ppc64':
|
+ if host.bitness == 32 or host.cpu == 'aarch64' or host.cpu == 'ppc64':
|
||||||
+ debug_info = '1'
|
+ debug_info = '1'
|
||||||
|
|
||||||
opts = []
|
opts = []
|
||||||
|
|
||||||
if opt_level is not None:
|
if opt_level is not None:
|
||||||
opts.append('opt-level=%s' % opt_level)
|
opts.append("opt-level=%s" % opt_level)
|
||||||
if debug_assertions is not None:
|
if debug_assertions is not None:
|
||||||
opts.append('debug-assertions=%s' %
|
opts.append("debug-assertions=%s" % ("yes" if debug_assertions else "no"))
|
||||||
('yes' if debug_assertions else 'no'))
|
if debug_info is not None:
|
||||||
|
@ -1,25 +0,0 @@
|
|||||||
diff --git a/build/moz.configure/lto-pgo.configure b/build/moz.configure/lto-pgo.configure
|
|
||||||
--- a/build/moz.configure/lto-pgo.configure
|
|
||||||
+++ b/build/moz.configure/lto-pgo.configure
|
|
||||||
@@ -224,17 +224,20 @@ def lto(value, c_compiler, ld64_known_go
|
|
||||||
#
|
|
||||||
# https://github.com/llvm/llvm-project/blob/e7694f34ab6a12b8bb480cbfcb396d0a64fe965f/llvm/lib/Target/X86/X86.td#L1165-L1187
|
|
||||||
if target.cpu == 'x86_64':
|
|
||||||
ldflags.append('-mllvm:-mcpu=x86-64')
|
|
||||||
# We do not need special flags for arm64. Hooray for fixed-length
|
|
||||||
# instruction sets.
|
|
||||||
else:
|
|
||||||
num_cores = multiprocessing.cpu_count()
|
|
||||||
- cflags.append("-flto")
|
|
||||||
+ if len(value) and value[0].lower() == 'full':
|
|
||||||
+ cflags.append("-flto")
|
|
||||||
+ else:
|
|
||||||
+ cflags.append("-flto=thin")
|
|
||||||
cflags.append("-flifetime-dse=1")
|
|
||||||
|
|
||||||
ldflags.append("-flto=%s" % num_cores)
|
|
||||||
ldflags.append("-flifetime-dse=1")
|
|
||||||
|
|
||||||
# Tell LTO not to inline functions above a certain size, to mitigate
|
|
||||||
# binary size growth while still getting good performance.
|
|
||||||
# (For hot functions, PGO will put a multiplier on this limit.)
|
|
@ -1,11 +1,11 @@
|
|||||||
PRODUCT="firefox"
|
PRODUCT="firefox"
|
||||||
CHANNEL="release"
|
CHANNEL="release"
|
||||||
VERSION="83.0"
|
VERSION="84.0"
|
||||||
VERSION_SUFFIX=""
|
VERSION_SUFFIX=""
|
||||||
PREV_VERSION="82.0.3"
|
PREV_VERSION="83.0"
|
||||||
PREV_VERSION_SUFFIX=""
|
PREV_VERSION_SUFFIX=""
|
||||||
#SKIP_LOCALES="" # Uncomment to skip l10n and compare-locales-generation
|
#SKIP_LOCALES="" # Uncomment to skip l10n and compare-locales-generation
|
||||||
|
|
||||||
RELEASE_REPO="https://hg.mozilla.org/releases/mozilla-release"
|
RELEASE_REPO="https://hg.mozilla.org/releases/mozilla-release"
|
||||||
RELEASE_TAG="55359edc5d1cb8addecf9d2e7151782da543f67b"
|
RELEASE_TAG="98507f230e7442065b287ced065ac77d4d8ea35d"
|
||||||
RELEASE_TIMESTAMP="20201112153044"
|
RELEASE_TIMESTAMP="20201211215739"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user