diff options
author | francoism90 | 2022-04-08 18:23:45 +0200 |
---|---|---|
committer | francoism90 | 2022-04-08 18:23:45 +0200 |
commit | 78c2b307bf0f069e7da8767b1b41b7ebafc08daa (patch) | |
tree | 4af0c7557363fcdc266dc39e7bfa196459226ddb | |
parent | eb697dedfb8a97728bf76ab4ab5a1dc9b4b037c6 (diff) | |
download | aur-78c2b307bf0f069e7da8767b1b41b7ebafc08daa.tar.gz |
Bump to 100.0b3
-rw-r--r-- | .SRCINFO | 83 | ||||
-rw-r--r-- | 0001-Use-remoting-name-for-GDK-application-names.patch | 57 | ||||
-rw-r--r-- | 0002-Add-missing-default-scheme.patch | 14 | ||||
-rw-r--r-- | PKGBUILD | 156 | ||||
-rw-r--r-- | firefox-developer-edition.desktop | 6 | ||||
-rw-r--r-- | firefox-install-dir.patch | 11 | ||||
-rw-r--r-- | firefox-kde.patch | 16 | ||||
-rw-r--r-- | mozilla-bmo1005535.patch | 30 | ||||
-rw-r--r-- | mozilla-bmo1504834-part1.patch | 121 | ||||
-rw-r--r-- | mozilla-bmo1504834-part2.patch | 112 | ||||
-rw-r--r-- | mozilla-bmo1504834-part3.patch | 64 | ||||
-rw-r--r-- | mozilla-bmo1504834-part4.patch | 40 | ||||
-rw-r--r-- | mozilla-bmo1626236.patch | 85 | ||||
-rw-r--r-- | mozilla-bmo531915.patch | 29 | ||||
-rw-r--r-- | mozilla-bmo849632.patch | 35 | ||||
-rw-r--r-- | mozilla-bmo998749.patch | 29 | ||||
-rw-r--r-- | mozilla-fix-top-level-asm.patch | 66 | ||||
-rw-r--r-- | mozilla-kde.patch | 71 | ||||
-rw-r--r-- | mozilla-nongnome-proxies.patch | 44 | ||||
-rw-r--r-- | mozilla-ntlm-full-path.patch | 28 | ||||
-rw-r--r-- | mozilla-sandbox-fips.patch | 40 | ||||
-rw-r--r-- | psutil.patch | 10 |
22 files changed, 127 insertions, 1020 deletions
@@ -1,8 +1,8 @@ pkgbase = firefox-developer-edition-kde - pkgdesc = Developer Edition of the popular Firefox web browser. - pkgver = 94.0b9 + pkgdesc = Standalone web browser from mozilla.org + pkgver = 100.0b3 pkgrel = 1 - url = https://www.mozilla.org/firefox/channel/#developer + url = https://www.mozilla.org/firefox/ arch = x86_64 license = MPL license = GPL @@ -10,97 +10,68 @@ pkgbase = firefox-developer-edition-kde makedepends = unzip makedepends = zip makedepends = diffutils - makedepends = python-setuptools makedepends = yasm makedepends = mesa makedepends = imake makedepends = inetutils makedepends = xorg-server-xvfb - makedepends = libpulse - makedepends = inetutils makedepends = autoconf2.13 makedepends = rust makedepends = clang makedepends = llvm makedepends = jack makedepends = nodejs - makedepends = cargo - makedepends = mercurial - makedepends = llvm - makedepends = python-psutil makedepends = cbindgen makedepends = nasm - makedepends = lld + makedepends = python-setuptools + makedepends = python-psutil makedepends = python-zstandard + makedepends = lld makedepends = dump_syms + makedepends = wasi-compiler-rt + makedepends = wasi-libc + makedepends = wasi-libc++ + makedepends = wasi-libc++abi depends = gtk3 depends = libxt depends = mime-types depends = dbus-glib depends = ffmpeg + depends = nss depends = ttf-font depends = libpulse - depends = nss - depends = hicolor-icon-theme depends = kmozillahelper - depends = nspr - depends = hunspell optdepends = networkmanager: Location detection via available WiFi networks optdepends = libnotify: Notification integration optdepends = pulseaudio: Audio support optdepends = speech-dispatcher: Text-to-Speech optdepends = hunspell-en_US: Spell checking, American English + optdepends = xdg-desktop-portal: Screensharing with Wayland provides = firefox-developer-edition conflicts = firefox-developer-edition options = !emptydirs options = !makeflags options = !strip - source = https://archive.mozilla.org/pub/firefox/releases/94.0b9/source/firefox-94.0b9.source.tar.xz - source = https://archive.mozilla.org/pub/firefox/releases/94.0b9/source/firefox-94.0b9.source.tar.xz.asc - source = firefox-install-dir.patch - source = 0001-Use-remoting-name-for-GDK-application-names.patch - source = 0002-Add-missing-default-scheme.patch + options = !lto + options = !debug + source = https://archive.mozilla.org/pub/firefox/releases/100.0b3/source/firefox-100.0b3.source.tar.xz + source = https://archive.mozilla.org/pub/firefox/releases/100.0b3/source/firefox-100.0b3.source.tar.xz.asc source = firefox-developer-edition.desktop source = identity-icons-brand.svg - source = mozilla-nongnome-proxies.patch::https://raw.githubusercontent.com/openSUSE/firefox-maintenance/master/mozilla-nongnome-proxies.patch + source = firefox-install-dir.patch + source = psutil.patch source = mozilla-kde.patch::https://raw.githubusercontent.com/openSUSE/firefox-maintenance/master/mozilla-kde.patch - source = mozilla-ntlm-full-path.patch::https://raw.githubusercontent.com/openSUSE/firefox-maintenance/master/mozilla-ntlm-full-path.patch - source = mozilla-sandbox-fips.patch::https://raw.githubusercontent.com/openSUSE/firefox-maintenance/master/mozilla-sandbox-fips.patch - source = mozilla-bmo1005535.patch::https://raw.githubusercontent.com/openSUSE/firefox-maintenance/master/mozilla-bmo1005535.patch - source = mozilla-bmo1504834-part1.patch::https://raw.githubusercontent.com/openSUSE/firefox-maintenance/master/mozilla-bmo1504834-part1.patch - source = mozilla-bmo1504834-part2.patch::https://raw.githubusercontent.com/openSUSE/firefox-maintenance/master/mozilla-bmo1504834-part2.patch - source = mozilla-bmo1504834-part3.patch::https://raw.githubusercontent.com/openSUSE/firefox-maintenance/master/mozilla-bmo1504834-part3.patch - source = mozilla-bmo1504834-part4.patch::https://raw.githubusercontent.com/openSUSE/firefox-maintenance/master/mozilla-bmo1504834-part4.patch - source = mozilla-fix-top-level-asm.patch::https://raw.githubusercontent.com/openSUSE/firefox-maintenance/master/mozilla-fix-top-level-asm.patch - source = mozilla-bmo849632.patch::https://raw.githubusercontent.com/openSUSE/firefox-maintenance/master/mozilla-bmo849632.patch - source = mozilla-bmo998749.patch::https://raw.githubusercontent.com/openSUSE/firefox-maintenance/master/mozilla-bmo998749.patch - source = mozilla-bmo1626236.patch::https://raw.githubusercontent.com/openSUSE/firefox-maintenance/master/mozilla-bmo1626236.patch - source = mozilla-bmo531915.patch::https://raw.githubusercontent.com/openSUSE/firefox-maintenance/master/mozilla-bmo531915.patch source = firefox-branded-icons.patch::https://raw.githubusercontent.com/openSUSE/firefox-maintenance/master/firefox/firefox-branded-icons.patch source = firefox-kde.patch::https://raw.githubusercontent.com/openSUSE/firefox-maintenance/master/firefox/firefox-kde.patch validpgpkeys = 14F26682D0916CDD81E37B6D61B7B526D98F0353 - sha512sums = 3a752f0ef8816427dddbe64f26c16da12fa430dfbc94bf44945d54fd0d581a5191d8a8f0e6aaf0e078697b71b6badc386276af27c8282dcea408bc011851404c - sha512sums = SKIP - sha512sums = b66dbe7f262d036e5a5b895ab5b0dbb03313bca18b0823c001ef2dbaeb1a33169b57db0cf4dfd268499f28913845119902b5d62e8a6a9cc4820eb0ee2f322a1e - sha512sums = 624a2531b4b85b1ad2286f0a6529313d9ae8a543b9f799a1f06d564db003f126e7bb3b5a35c6ab2f28d0e495a399d97476df8436914ba637cf627b52c3ab6f8d - sha512sums = 2a46f450fa230b964bc105087d578574bebccc18c337d89860740caeb00ea798c69edc70b256d87437dc4e791d1d223dbb1b70531c32333d6b23fa3550d1d941 - sha512sums = 96d56ed8d14dd16cd44df5dc156d81a4426280cdd8bd61e71831b7555c4d4a256fca523ce53852f6f98a546bf20d92b9c63aeeaff7a06174b8da7a8028394397 - sha512sums = b579b73176c72a5ecf36e3f63bba08fdb8041ae99d54e5cab906660fed6a9cf2311f7ca1ec1649e451cc6d5a4b1e6060b974b1d7befe9c8df3c5a89c50383c17 - sha512sums = dcdaba2b51f8e7dc4fbfeb7c707581a136d8727a64352fb09f40e62c1bba03f66d4770d21bd9ea0b9a249314fd4ce273bb42efb7108db39bbbadf1d0ddb8e3aa - sha512sums = 70e0098da963540eb685184bf24e32c4b7ecb28a373d6c1792961bf3142f964af247c94774be0ae1e014c9e43bf4aee439cb45dcf882ad234bdb00709b3e71d9 - sha512sums = a8d1da2d85cd59c9254cd10800957eebb2e60818968739c9711d53d651a72b7a895b3cf973e24c019ec996a1ad7e2f3e28448e4e3a43761ee00b53284274e400 - sha512sums = 4716b5e450231ba375c26177a8983c8689054df0e8889488455bb1e045ec584f7bf7b7d0779c49fca43e2a05bcf25391dc7f825fadaa1079b283d9679083854f - sha512sums = c46a5e05a7cfa6acceae7b3474b5fa26727b32369b1bbd93fcdb0bd3aa2b42192b7ce4ba540ecc1011317024f8005b264fa85273385e15e89c93c489f7da3c03 - sha512sums = c84d412df15a8aeaad41000f591e504bfef054614daff3246f292be59ce3b25e724149a94bdead5bcae5f1704c7e7c987b8130fa38f8dac0df466bdc8b9bb0e2 - sha512sums = 7158ddd53b0e25e534f3df762d607c83f4e3e19385758534adcd1e3fc514d689373048fac878b8e27701bfc863ba6a52860d5dfb64902ec8ce59af427e7fb6c6 - sha512sums = 4c9df14609e16ece6cbfd321b1242e6fc4377341ea269ec68aa2747c34cc2c40e38f342bdee1f1f5a4d4c6da62233706ec3ed677bcfafdcebe94200ff71e24fd - sha512sums = aa3f0d0e2603d32722ba59700efdc4e618fe3ba15f4a2ecb3c63b28dc892138dbc1427b04e9f9749ff5009ca935c70d7c6cefe5b0ad6b121b82f5cf07ea45086 - sha512sums = 31738b0d7c2ae0fbdc567e84d24774e057bc0257af66e3c08a6386828051d3df4fc7aaacf71aee5a7badfa0734a8999ce1a002e639b1cf35e576b1d889edcfea - sha512sums = 6b9e3589a7359499cf197556c00ee32193ee32b8bfb0d8811511d05105e89e107c8c0b3543a96b0234b0893c260ba6e07de23da67493505a846baf42d59cfd6e - sha512sums = 3216e96e7cd1624945595f016fbe76a699d8627c60250768857c74c2453e66e3cc9207bfbf486ea1be5685b595bf1ae4626401502f723e94320c42c7b12d0785 - sha512sums = 773be00a1aea29527e8556b152f463e477f025785e2ca98ca12804b3a5783444bdf4f6d6765b167f64dce3110b91af5efed58c1744d35b2da187d1b4eac8ed59 - sha512sums = 7c149f99541fb9d6f67a17987ce1ef4456799ac8ad7dc9d963b7a3435f024892014e8c577e7ee79735cbcaff9b67328d4c0e22c73adebf1052102cbcc95c85a8 - sha512sums = 29eb82ff71385b299b2f1baefbb32c5add484117315245ca21d5d521ec9281d08023753d3daff731ecf93df83f9f1e945cd04a3320f0e05c0d675afbcab6ecc3 - sha512sums = 4c4c6cdc86da0a7e335526df763379e24af2caa282b25d6ea32dbbc6af6c499177b1f4ae87b2f010e38be812c2529e79ac47abc692774e19af117ccbe9a5bbb1 + sha256sums = 7944cf62e046902b903b3e1c36a63eff81d1441332df9f63eaaec93220691176 + sha256sums = SKIP + sha256sums = 67e1934ed8ac0fb4bb020cde11157956151e4c48ec5405783763a5fe4b887e6d + sha256sums = a9b8b4a0a1f4a7b4af77d5fc70c2686d624038909263c795ecc81e0aec7711e9 + sha256sums = 99dccc8a955bee85ce69c02a32888f7d79ba7dd0fe5aa6aaf6f52102286d544c + sha256sums = f811e6408fa8900bed80055403dec889e0249681bba2b85911f96571595f78ce + sha256sums = bc5397bbccf158e12e058646ab88a636040ba810e5f8270a2efa914e3b8b52d0 + sha256sums = bcedaf4feb3ec56c86cb3b99c0fa99c3f38090485454d4beacf23bd90056433a + sha256sums = da420deac6bfdcbf0bba31011ec23be31cdc5ab10f95a6fef5a2d6d6defc739d pkgname = firefox-developer-edition-kde diff --git a/0001-Use-remoting-name-for-GDK-application-names.patch b/0001-Use-remoting-name-for-GDK-application-names.patch deleted file mode 100644 index c1feb3fc8081..000000000000 --- a/0001-Use-remoting-name-for-GDK-application-names.patch +++ /dev/null @@ -1,57 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: "Jan Alexander Steffens (heftig)" <jan.steffens@gmail.com> -Date: Mon, 25 Mar 2019 20:30:11 +0100 -Subject: [PATCH] Use remoting name for GDK application names - ---- - toolkit/xre/nsAppRunner.cpp | 6 +----- - widget/gtk/nsAppShell.cpp | 12 +++++------- - 2 files changed, 6 insertions(+), 12 deletions(-) - -diff --git a/toolkit/xre/nsAppRunner.cpp b/toolkit/xre/nsAppRunner.cpp -index bb14d84338334..f5c0222987fb0 100644 ---- a/toolkit/xre/nsAppRunner.cpp -+++ b/toolkit/xre/nsAppRunner.cpp -@@ -4299,11 +4299,7 @@ int XREMain::XRE_mainStartup(bool* aExitFlag) { - // consistently. - - // Set program name to the one defined in application.ini. -- { -- nsAutoCString program(gAppData->name); -- ToLowerCase(program); -- g_set_prgname(program.get()); -- } -+ g_set_prgname(gAppData->remotingName); - - // Initialize GTK here for splash. - -diff --git a/widget/gtk/nsAppShell.cpp b/widget/gtk/nsAppShell.cpp -index 60de473de07ab..004c066575c17 100644 ---- a/widget/gtk/nsAppShell.cpp -+++ b/widget/gtk/nsAppShell.cpp -@@ -24,6 +24,8 @@ - # include "WakeLockListener.h" - #endif - #include "gfxPlatform.h" -+#include "nsAppRunner.h" -+#include "mozilla/XREAppData.h" - #include "ScreenHelperGTK.h" - #include "HeadlessScreenHelper.h" - #include "mozilla/widget/ScreenManager.h" -@@ -152,13 +154,9 @@ nsresult nsAppShell::Init() { - // See https://bugzilla.gnome.org/show_bug.cgi?id=747634 - // - // Only bother doing this for the parent process, since it's the one -- // creating top-level windows. (At this point, a child process hasn't -- // received the list of registered chrome packages, so the -- // GetBrandShortName call would fail anyway.) -- nsAutoString brandName; -- mozilla::widget::WidgetUtils::GetBrandShortName(brandName); -- if (!brandName.IsEmpty()) { -- gdk_set_program_class(NS_ConvertUTF16toUTF8(brandName).get()); -+ // creating top-level windows. -+ if (gAppData) { -+ gdk_set_program_class(gAppData->remotingName); - } - } - } diff --git a/0002-Add-missing-default-scheme.patch b/0002-Add-missing-default-scheme.patch deleted file mode 100644 index ce3c400ffa6a..000000000000 --- a/0002-Add-missing-default-scheme.patch +++ /dev/null @@ -1,14 +0,0 @@ ---- a/browser/components/shell/nsKDEShellService.cpp -+++ b/browser/components/shell/nsKDEShellService.cpp -@@ -101,3 +101,11 @@ - return NS_ERROR_NOT_IMPLEMENTED; - } - -+ -+NS_IMETHODIMP -+nsKDEShellService::IsDefaultForScheme(nsTSubstring<char> const& aScheme, -+ bool* aIsDefaultBrowser) -+{ -+ return NS_ERROR_NOT_IMPLEMENTED; -+} -+ @@ -1,6 +1,8 @@ # Maintainer: Francois Menning <f.menning@pm.me> -# Contributor: Andrew Crerar <crerar@archlinux.org> # Contributor: Jan Alexander Steffens (heftig) <heftig@archlinux.org> +# Contributor: Andrew Crerar <crerar@archlinux.org> +# Contributor: Ionut Biru <ibiru@archlinux.org> +# Contributor: Jakub Schmidtke <sjakub@gmail.com> # Contributor: Thaodan <theodorstormgrade@gmail.com> # Contributor: Weng Xuetian <wengxt@gmail.com> @@ -8,72 +10,45 @@ _pkgname=firefox-developer-edition _patchurl=https://raw.githubusercontent.com/openSUSE/firefox-maintenance/master pkgname=firefox-developer-edition-kde -pkgver=94.0b9 +pkgver=100.0b3 pkgrel=1 -pkgdesc="Developer Edition of the popular Firefox web browser." -arch=('x86_64') -license=('MPL' 'GPL' 'LGPL') -url="https://www.mozilla.org/firefox/channel/#developer" -depends=('gtk3' 'libxt' 'mime-types' 'dbus-glib' 'ffmpeg' 'ttf-font' 'libpulse' 'nss' - 'hicolor-icon-theme' 'kmozillahelper' 'nspr' 'hunspell') -makedepends=('unzip' 'zip' 'diffutils' 'python-setuptools' 'yasm' 'mesa' 'imake' 'inetutils' - 'xorg-server-xvfb' 'libpulse' 'inetutils' 'autoconf2.13' 'rust' 'clang' 'llvm' 'jack' 'nodejs' - 'cargo' 'mercurial' 'llvm' 'python-psutil' 'cbindgen' 'nasm' 'lld' 'python-zstandard' 'dump_syms') +pkgdesc="Standalone web browser from mozilla.org" +arch=(x86_64) +license=(MPL GPL LGPL) +url="https://www.mozilla.org/firefox/" +depends=(gtk3 libxt mime-types dbus-glib ffmpeg nss ttf-font libpulse kmozillahelper) +makedepends=(unzip zip diffutils yasm mesa imake inetutils xorg-server-xvfb + autoconf2.13 rust clang llvm jack nodejs cbindgen nasm + python-setuptools python-psutil python-zstandard lld dump_syms + wasi-compiler-rt wasi-libc wasi-libc++ wasi-libc++abi) optdepends=('networkmanager: Location detection via available WiFi networks' 'libnotify: Notification integration' 'pulseaudio: Audio support' 'speech-dispatcher: Text-to-Speech' - 'hunspell-en_US: Spell checking, American English') + 'hunspell-en_US: Spell checking, American English' + 'xdg-desktop-portal: Screensharing with Wayland') +options=(!emptydirs !makeflags !strip !lto !debug) conflicts=('firefox-developer-edition') provides=('firefox-developer-edition') -options=(!emptydirs !makeflags !strip) source=(https://archive.mozilla.org/pub/firefox/releases/$pkgver/source/firefox-$pkgver.source.tar.xz{,.asc} - firefox-install-dir.patch - 0001-Use-remoting-name-for-GDK-application-names.patch - 0002-Add-missing-default-scheme.patch - "$_pkgname".desktop + $_pkgname.desktop identity-icons-brand.svg + # https://github.com/archlinux/svntogit-community/tree/packages/firefox-developer-edition + firefox-install-dir.patch + psutil.patch # https://github.com/openSUSE/firefox-maintenance - mozilla-nongnome-proxies.patch::$_patchurl/mozilla-nongnome-proxies.patch mozilla-kde.patch::$_patchurl/mozilla-kde.patch - mozilla-ntlm-full-path.patch::$_patchurl/mozilla-ntlm-full-path.patch - mozilla-sandbox-fips.patch::$_patchurl/mozilla-sandbox-fips.patch - mozilla-bmo1005535.patch::$_patchurl/mozilla-bmo1005535.patch - mozilla-bmo1504834-part1.patch::$_patchurl/mozilla-bmo1504834-part1.patch - mozilla-bmo1504834-part2.patch::$_patchurl/mozilla-bmo1504834-part2.patch - mozilla-bmo1504834-part3.patch::$_patchurl/mozilla-bmo1504834-part3.patch - mozilla-bmo1504834-part4.patch::$_patchurl/mozilla-bmo1504834-part4.patch - mozilla-fix-top-level-asm.patch::$_patchurl/mozilla-fix-top-level-asm.patch - mozilla-bmo849632.patch::$_patchurl/mozilla-bmo849632.patch - mozilla-bmo998749.patch::$_patchurl/mozilla-bmo998749.patch - mozilla-bmo1626236.patch::$_patchurl/mozilla-bmo1626236.patch - mozilla-bmo531915.patch::$_patchurl/mozilla-bmo531915.patch firefox-branded-icons.patch::$_patchurl/firefox/firefox-branded-icons.patch - firefox-kde.patch::$_patchurl/firefox/firefox-kde.patch -) -sha512sums=('3a752f0ef8816427dddbe64f26c16da12fa430dfbc94bf44945d54fd0d581a5191d8a8f0e6aaf0e078697b71b6badc386276af27c8282dcea408bc011851404c' + firefox-kde.patch::$_patchurl/firefox/firefox-kde.patch) +sha256sums=('7944cf62e046902b903b3e1c36a63eff81d1441332df9f63eaaec93220691176' 'SKIP' - 'b66dbe7f262d036e5a5b895ab5b0dbb03313bca18b0823c001ef2dbaeb1a33169b57db0cf4dfd268499f28913845119902b5d62e8a6a9cc4820eb0ee2f322a1e' - '624a2531b4b85b1ad2286f0a6529313d9ae8a543b9f799a1f06d564db003f126e7bb3b5a35c6ab2f28d0e495a399d97476df8436914ba637cf627b52c3ab6f8d' - '2a46f450fa230b964bc105087d578574bebccc18c337d89860740caeb00ea798c69edc70b256d87437dc4e791d1d223dbb1b70531c32333d6b23fa3550d1d941' - '96d56ed8d14dd16cd44df5dc156d81a4426280cdd8bd61e71831b7555c4d4a256fca523ce53852f6f98a546bf20d92b9c63aeeaff7a06174b8da7a8028394397' - 'b579b73176c72a5ecf36e3f63bba08fdb8041ae99d54e5cab906660fed6a9cf2311f7ca1ec1649e451cc6d5a4b1e6060b974b1d7befe9c8df3c5a89c50383c17' - 'dcdaba2b51f8e7dc4fbfeb7c707581a136d8727a64352fb09f40e62c1bba03f66d4770d21bd9ea0b9a249314fd4ce273bb42efb7108db39bbbadf1d0ddb8e3aa' - '70e0098da963540eb685184bf24e32c4b7ecb28a373d6c1792961bf3142f964af247c94774be0ae1e014c9e43bf4aee439cb45dcf882ad234bdb00709b3e71d9' - 'a8d1da2d85cd59c9254cd10800957eebb2e60818968739c9711d53d651a72b7a895b3cf973e24c019ec996a1ad7e2f3e28448e4e3a43761ee00b53284274e400' - '4716b5e450231ba375c26177a8983c8689054df0e8889488455bb1e045ec584f7bf7b7d0779c49fca43e2a05bcf25391dc7f825fadaa1079b283d9679083854f' - 'c46a5e05a7cfa6acceae7b3474b5fa26727b32369b1bbd93fcdb0bd3aa2b42192b7ce4ba540ecc1011317024f8005b264fa85273385e15e89c93c489f7da3c03' - 'c84d412df15a8aeaad41000f591e504bfef054614daff3246f292be59ce3b25e724149a94bdead5bcae5f1704c7e7c987b8130fa38f8dac0df466bdc8b9bb0e2' - '7158ddd53b0e25e534f3df762d607c83f4e3e19385758534adcd1e3fc514d689373048fac878b8e27701bfc863ba6a52860d5dfb64902ec8ce59af427e7fb6c6' - '4c9df14609e16ece6cbfd321b1242e6fc4377341ea269ec68aa2747c34cc2c40e38f342bdee1f1f5a4d4c6da62233706ec3ed677bcfafdcebe94200ff71e24fd' - 'aa3f0d0e2603d32722ba59700efdc4e618fe3ba15f4a2ecb3c63b28dc892138dbc1427b04e9f9749ff5009ca935c70d7c6cefe5b0ad6b121b82f5cf07ea45086' - '31738b0d7c2ae0fbdc567e84d24774e057bc0257af66e3c08a6386828051d3df4fc7aaacf71aee5a7badfa0734a8999ce1a002e639b1cf35e576b1d889edcfea' - '6b9e3589a7359499cf197556c00ee32193ee32b8bfb0d8811511d05105e89e107c8c0b3543a96b0234b0893c260ba6e07de23da67493505a846baf42d59cfd6e' - '3216e96e7cd1624945595f016fbe76a699d8627c60250768857c74c2453e66e3cc9207bfbf486ea1be5685b595bf1ae4626401502f723e94320c42c7b12d0785' - '773be00a1aea29527e8556b152f463e477f025785e2ca98ca12804b3a5783444bdf4f6d6765b167f64dce3110b91af5efed58c1744d35b2da187d1b4eac8ed59' - '7c149f99541fb9d6f67a17987ce1ef4456799ac8ad7dc9d963b7a3435f024892014e8c577e7ee79735cbcaff9b67328d4c0e22c73adebf1052102cbcc95c85a8' - '29eb82ff71385b299b2f1baefbb32c5add484117315245ca21d5d521ec9281d08023753d3daff731ecf93df83f9f1e945cd04a3320f0e05c0d675afbcab6ecc3' - '4c4c6cdc86da0a7e335526df763379e24af2caa282b25d6ea32dbbc6af6c499177b1f4ae87b2f010e38be812c2529e79ac47abc692774e19af117ccbe9a5bbb1') + '67e1934ed8ac0fb4bb020cde11157956151e4c48ec5405783763a5fe4b887e6d' + 'a9b8b4a0a1f4a7b4af77d5fc70c2686d624038909263c795ecc81e0aec7711e9' + '99dccc8a955bee85ce69c02a32888f7d79ba7dd0fe5aa6aaf6f52102286d544c' + 'f811e6408fa8900bed80055403dec889e0249681bba2b85911f96571595f78ce' + 'bc5397bbccf158e12e058646ab88a636040ba810e5f8270a2efa914e3b8b52d0' + 'bcedaf4feb3ec56c86cb3b99c0fa99c3f38090485454d4beacf23bd90056433a' + 'da420deac6bfdcbf0bba31011ec23be31cdc5ab10f95a6fef5a2d6d6defc739d') validpgpkeys=('14F26682D0916CDD81E37B6D61B7B526D98F0353') # Mozilla Software Releases <release@mozilla.com> # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys) @@ -92,40 +67,21 @@ prepare() { mkdir mozbuild cd firefox-${pkgver%b*} - # Install location + # https://github.com/archlinux/svntogit-community/tree/packages/firefox-developer-edition/trunk patch -Np1 -i ../firefox-install-dir.patch - - # https://bugzilla.mozilla.org/show_bug.cgi?id=1530052 - patch -Np1 -i ../0001-Use-remoting-name-for-GDK-application-names.patch + patch -Np1 -i ../psutil.patch # https://github.com/openSUSE/firefox-maintenance/blob/master/firefox/MozillaFirefox.spec # Gecko/Toolkit - patch -Np1 -i ../mozilla-nongnome-proxies.patch patch -Np1 -i ../mozilla-kde.patch - patch -Np1 -i ../mozilla-ntlm-full-path.patch - patch -Np1 -i ../mozilla-sandbox-fips.patch - patch -Np1 -i ../mozilla-bmo1005535.patch - patch -Np1 -i ../mozilla-bmo1504834-part1.patch - patch -Np1 -i ../mozilla-bmo1504834-part2.patch - patch -Np1 -i ../mozilla-bmo1504834-part3.patch - patch -Np1 -i ../mozilla-bmo1504834-part4.patch - patch -Np1 -i ../mozilla-fix-top-level-asm.patch - patch -Np1 -i ../mozilla-bmo849632.patch - patch -Np1 -i ../mozilla-bmo998749.patch - patch -Np1 -i ../mozilla-bmo1626236.patch - patch -Np1 -i ../mozilla-bmo531915.patch # Firefox/browser patch -Np1 -i ../firefox-kde.patch - patch -Np1 -i ../firefox-branded-icons.patch - # https://github.com/openSUSE/firefox-maintenance/issues/37 - patch -Np1 -i ../0002-Add-missing-default-scheme.patch + echo -n "$_google_api_key" >google-api-key + echo -n "$_mozilla_api_key" >mozilla-api-key - echo -n "$_google_api_key" > google-api-key - echo -n "$_mozilla_api_key" > mozilla-api-key - - cat > ../mozconfig << END + cat >../mozconfig <<END ac_add_options --enable-application=browser mk_add_options MOZ_OBJDIR=${PWD@Q}/obj @@ -137,24 +93,16 @@ ac_add_options --enable-rust-simd ac_add_options --enable-linker=lld ac_add_options --disable-elf-hack ac_add_options --disable-bootstrap -# ac_add_options --with-ccache=sccache -export CC='clang --target=x86_64-unknown-linux-gnu' -export CXX='clang++ --target=x86_64-unknown-linux-gnu' -export AR=llvm-ar -export NM=llvm-nm -export RANLIB=llvm-ranlib +ac_add_options --with-wasi-sysroot=/usr/share/wasi-sysroot # Branding ac_add_options --enable-official-branding -ac_add_options --with-branding=browser/branding/aurora -ac_add_options --enable-update-channel=aurora +ac_add_options --enable-update-channel=release ac_add_options --with-distribution-id=org.archlinux ac_add_options --with-unsigned-addon-scopes=app,system ac_add_options --allow-addon-sideload export MOZILLA_OFFICIAL=1 -export MOZ_APP_REMOTINGNAME=firefox-developer-edition -export MOZ_TELEMETRY_REPORTING=1 -export MOZ_REQUIRE_SIGNING= +export MOZ_APP_REMOTINGNAME=${_pkgname//-/} # Keys ac_add_options --with-google-location-service-api-keyfile=${PWD@Q}/google-api-key @@ -166,8 +114,6 @@ ac_add_options --with-system-nspr ac_add_options --with-system-nss # Features -# ac_add_options --enable-default-toolkit=cairo-gtk3 -ac_add_options --enable-default-toolkit=cairo-gtk3-wayland ac_add_options --enable-alsa ac_add_options --enable-jack ac_add_options --enable-crashreporter @@ -181,8 +127,8 @@ build() { export MOZ_NOSPAM=1 export MOZBUILD_STATE_PATH="$srcdir/mozbuild" - export MACH_USE_SYSTEM_PYTHON=1 export MOZ_ENABLE_FULL_SYMBOLS=1 + export MACH_USE_SYSTEM_PYTHON=1 # LTO needs more open files ulimit -n 4096 @@ -228,26 +174,26 @@ package() { DESTDIR="$pkgdir" ./mach install local vendorjs="$pkgdir/usr/lib/$_pkgname/browser/defaults/preferences/vendor.js" - install -Dm644 /dev/stdin "$vendorjs" << END -// Use LANG environment variable to choose locale. + install -Dvm644 /dev/stdin "$vendorjs" <<END +// Use LANG environment variable to choose locale pref("intl.locale.requested", ""); -// Use system-provided dictionaries. +// Use system-provided dictionaries pref("spellchecker.dictionary_path", "/usr/share/hunspell"); // Disable default browser checking. pref("browser.shell.checkDefaultBrowser", false); -// Don't disable our bundled extensions in the application directory. +// Don't disable extensions in the application directory pref("extensions.autoDisableScopes", 11); END local distini="$pkgdir/usr/lib/$_pkgname/distribution/distribution.ini" - install -Dm644 /dev/stdin "$distini" << END + install -Dvm644 /dev/stdin "$distini" <<END [Global] id=archlinux version=1.0 -about=Mozilla Firefox Developer Edition for Arch Linux +about=Mozilla Firefox for Arch Linux [Preferences] app.distributor=archlinux @@ -255,9 +201,9 @@ app.distributor.channel=$_pkgname app.partner.archlinux=archlinux END - local i theme=aurora + local i theme=official for i in 16 22 24 32 48 64 128 256; do - install -Dm644 browser/branding/$theme/default$i.png \ + install -Dvm644 browser/branding/$theme/default$i.png \ "$pkgdir/usr/share/icons/hicolor/${i}x${i}/apps/$_pkgname.png" done install -Dvm644 browser/branding/$theme/content/about-logo.png \ @@ -269,23 +215,23 @@ END install -Dvm644 ../identity-icons-brand.svg \ "$pkgdir/usr/share/icons/hicolor/symbolic/apps/$_pkgname-symbolic.svg" - install -Dm644 ../$_pkgname.desktop \ + install -Dvm644 ../$_pkgname.desktop \ "$pkgdir/usr/share/applications/$_pkgname.desktop" # Install a wrapper to avoid confusion about binary path - install -Dm755 /dev/stdin "$pkgdir/usr/bin/$_pkgname" << END + install -Dvm755 /dev/stdin "$pkgdir/usr/bin/$_pkgname" <<END #!/bin/sh exec /usr/lib/$_pkgname/firefox "\$@" END # Replace duplicate binary with wrapper # https://bugzilla.mozilla.org/show_bug.cgi?id=658850 - ln -srf "$pkgdir/usr/bin/$_pkgname" "$pkgdir/usr/lib/$_pkgname/firefox-bin" + ln -srfv "$pkgdir/usr/bin/$_pkgname" "$pkgdir/usr/lib/$_pkgname/firefox-bin" # Use system certificates local nssckbi="$pkgdir/usr/lib/$_pkgname/libnssckbi.so" if [[ -e $nssckbi ]]; then - ln -srf "$pkgdir/usr/lib/libnssckbi.so" "$nssckbi" + ln -srfv "$pkgdir/usr/lib/libnssckbi.so" "$nssckbi" fi export SOCORRO_SYMBOL_UPLOAD_TOKEN_FILE="$startdir/.crash-stats-api.token" @@ -295,3 +241,5 @@ END cp -fvt "$startdir" obj/dist/*crashreporter-symbols-full.tar.zst fi } + +# vim:set sw=2 et: diff --git a/firefox-developer-edition.desktop b/firefox-developer-edition.desktop index 7378d3c84eee..505b8369d0d3 100644 --- a/firefox-developer-edition.desktop +++ b/firefox-developer-edition.desktop @@ -112,7 +112,7 @@ Keywords[uk]=Internet;WWW;Browser;Web;Explorer;Інтернет;мережа;п Keywords[vi]=Internet;WWW;Browser;Web;Explorer;Trình duyệt;Trang web Keywords[zh_CN]=Internet;WWW;Browser;Web;Explorer;网页;浏览;上网;火狐;Firefox;ff;互联网;网站; Keywords[zh_TW]=Internet;WWW;Browser;Web;Explorer;網際網路;網路;瀏覽器;上網;網頁;火狐 -Exec=/usr/lib/firefox-developer-edition/firefox --class="firefox-developer-edition" %u +Exec=/usr/lib/firefox-developer-edition/firefox %u Icon=firefox-developer-edition Terminal=false X-MultipleArgs=false @@ -229,7 +229,7 @@ Name[wo]=Palanteer bu bees Name[xh]=Ifestile entsha Name[zh_CN]=新建窗口 Name[zh_TW]=開新視窗 -Exec=/usr/lib/firefox-developer-edition/firefox --class="firefox-developer-edition" --new-window %u +Exec=/usr/lib/firefox-developer-edition/firefox --new-window %u [Desktop Action new-private-window] Name=New Private Window @@ -337,4 +337,4 @@ Name[wo]=Panlanteeru biir bu bees Name[xh]=Ifestile yangasese entsha Name[zh_CN]=新建隐私浏览窗口 Name[zh_TW]=新增隱私視窗 -Exec=/usr/lib/firefox-developer-edition/firefox --class="firefox-developer-edition" --private-window %u +Exec=/usr/lib/firefox-developer-edition/firefox --private-window %u diff --git a/firefox-install-dir.patch b/firefox-install-dir.patch index 70ce329f2946..c985351aa667 100644 --- a/firefox-install-dir.patch +++ b/firefox-install-dir.patch @@ -1,18 +1,7 @@ - browser/branding/aurora/configure.sh | 1 - config/baseconfig.mk | 2 +- toolkit/mozapps/installer/packager.mk | 4 ++-- 3 files changed, 3 insertions(+), 4 deletions(-) -diff --git c/browser/branding/aurora/configure.sh i/browser/branding/aurora/configure.sh -index 19d4ff057f73..2c79e136cc67 100644 ---- c/browser/branding/aurora/configure.sh -+++ i/browser/branding/aurora/configure.sh -@@ -3,5 +3,4 @@ - # file, You can obtain one at http://mozilla.org/MPL/2.0/. - - MOZ_APP_DISPLAYNAME="Firefox Developer Edition" --MOZ_APP_REMOTINGNAME=firefox-dev - MOZ_DEV_EDITION=1 diff --git c/config/baseconfig.mk i/config/baseconfig.mk index 3ef3af95d611..81530dface0a 100644 --- c/config/baseconfig.mk diff --git a/firefox-kde.patch b/firefox-kde.patch index 29d7e78c552e..e1521ef3aff1 100644 --- a/firefox-kde.patch +++ b/firefox-kde.patch @@ -3,7 +3,7 @@ # Date 1559300151 -7200 # Fri May 31 12:55:51 2019 +0200 # Node ID 54d41b0033b8d649d842a1f862c6fed8b9874dec -# Parent 856ef9c699423b1cd35e4df8745e78c409c8dbae +# Parent 23d64c5753fda6f201477fe1f2f6cf1fb1657ccc How to apply this patch: 1. Import and apply it 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 --- a/browser/components/preferences/main.js +++ b/browser/components/preferences/main.js -@@ -338,16 +338,23 @@ var gMainPane = { +@@ -353,16 +353,23 @@ var gMainPane = { }, 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 = Services.urlFormatter.formatURLPref("app.support.baseURL") + -@@ -1313,16 +1320,27 @@ var gMainPane = { +@@ -1365,16 +1372,27 @@ var gMainPane = { this._backoffIndex = 0; let shellSvc = getShellService(); @@ -69,7 +69,7 @@ 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 --- a/browser/components/shell/moz.build +++ b/browser/components/shell/moz.build -@@ -32,16 +32,18 @@ if CONFIG["MOZ_WIDGET_TOOLKIT"] == "coco +@@ -31,16 +31,18 @@ if CONFIG["MOZ_WIDGET_TOOLKIT"] == "coco ] elif CONFIG["MOZ_WIDGET_TOOLKIT"] == "gtk": XPIDL_SOURCES += [ @@ -92,7 +92,7 @@ diff --git a/browser/components/shell/nsKDEShellService.cpp b/browser/components new file mode 100644 --- /dev/null +++ b/browser/components/shell/nsKDEShellService.cpp -@@ -0,0 +1,103 @@ +@@ -0,0 +1,109 @@ +/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* 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 @@ -196,6 +196,12 @@ new file mode 100644 + return NS_ERROR_NOT_IMPLEMENTED; +} + ++NS_IMETHODIMP ++nsKDEShellService::IsDefaultForScheme(nsTSubstring<char> const& aScheme, bool* aIsDefaultBrowser) ++{ ++ return NS_ERROR_NOT_IMPLEMENTED; ++} ++ diff --git a/browser/components/shell/nsKDEShellService.h b/browser/components/shell/nsKDEShellService.h new file mode 100644 --- /dev/null diff --git a/mozilla-bmo1005535.patch b/mozilla-bmo1005535.patch deleted file mode 100644 index d20d81209160..000000000000 --- a/mozilla-bmo1005535.patch +++ /dev/null @@ -1,30 +0,0 @@ -# HG changeset patch -# User Steve Singer <steve@ssinger.info> -# Date 1558451540 -7200 -# Tue May 21 17:12:20 2019 +0200 -# Node ID 433beec63e6b5f409683af20a0c1ab137cc7bfad -# Parent c0fdccc716e80a6d289c94f5d507ae141c62a3bf -Bug 1005535 - Get skia GPU building on big endian. - -diff --git a/gfx/skia/skia/src/gpu/GrColor.h b/gfx/skia/skia/src/gpu/GrColor.h ---- a/gfx/skia/skia/src/gpu/GrColor.h -+++ b/gfx/skia/skia/src/gpu/GrColor.h -@@ -59,17 +59,17 @@ static inline GrColor GrColorPackRGBA(un - #define GrColorUnpackG(color) (((color) >> GrColor_SHIFT_G) & 0xFF) - #define GrColorUnpackB(color) (((color) >> GrColor_SHIFT_B) & 0xFF) - #define GrColorUnpackA(color) (((color) >> GrColor_SHIFT_A) & 0xFF) - - /** - * Since premultiplied means that alpha >= color, we construct a color with - * each component==255 and alpha == 0 to be "illegal" - */ --#define GrColor_ILLEGAL (~(0xFF << GrColor_SHIFT_A)) -+#define GrColor_ILLEGAL ((uint32_t)(~(0xFF << GrColor_SHIFT_A))) - - /** Normalizes and coverts an uint8_t to a float. [0, 255] -> [0.0, 1.0] */ - static inline float GrNormalizeByteToFloat(uint8_t value) { - static const float ONE_OVER_255 = 1.f / 255.f; - return value * ONE_OVER_255; - } - - /** Used to pick vertex attribute types. */ diff --git a/mozilla-bmo1504834-part1.patch b/mozilla-bmo1504834-part1.patch deleted file mode 100644 index 1afe3aa4a2ea..000000000000 --- a/mozilla-bmo1504834-part1.patch +++ /dev/null @@ -1,121 +0,0 @@ -# HG changeset patch -# Parent b5471d23321d16a0bacc25b7afd27d2e16adba1a -Taken from https://bugzilla.mozilla.org/show_bug.cgi?id=1504834 - -diff --git a/gfx/2d/DrawTargetSkia.cpp b/gfx/2d/DrawTargetSkia.cpp ---- a/gfx/2d/DrawTargetSkia.cpp -+++ b/gfx/2d/DrawTargetSkia.cpp -@@ -130,18 +130,17 @@ static IntRect CalculateSurfaceBounds(co - Rect sampledBounds = inverse.TransformBounds(*aBounds); - if (!sampledBounds.ToIntRect(&bounds)) { - return surfaceBounds; - } - - return surfaceBounds.Intersect(bounds); - } - --static const int kARGBAlphaOffset = -- SurfaceFormat::A8R8G8B8_UINT32 == SurfaceFormat::B8G8R8A8 ? 3 : 0; -+static const int kARGBAlphaOffset = 0; // Skia is always BGRA SurfaceFormat::A8R8G8B8_UINT32 == SurfaceFormat::B8G8R8A8 ? 3 : 0; - - static bool VerifyRGBXFormat(uint8_t* aData, const IntSize& aSize, - const int32_t aStride, SurfaceFormat aFormat) { - if (aFormat != SurfaceFormat::B8G8R8X8 || aSize.IsEmpty()) { - return true; - } - // We should've initialized the data to be opaque already - // On debug builds, verify that this is actually true. -diff --git a/gfx/2d/Types.h b/gfx/2d/Types.h ---- a/gfx/2d/Types.h -+++ b/gfx/2d/Types.h -@@ -84,25 +84,18 @@ enum class SurfaceFormat : int8_t { - Depth, - - // This represents the unknown format. - UNKNOWN, - - // The following values are endian-independent synonyms. The _UINT32 suffix - // indicates that the name reflects the layout when viewed as a uint32_t - // value. --#if MOZ_LITTLE_ENDIAN() - A8R8G8B8_UINT32 = B8G8R8A8, // 0xAARRGGBB - X8R8G8B8_UINT32 = B8G8R8X8, // 0x00RRGGBB --#elif MOZ_BIG_ENDIAN() -- A8R8G8B8_UINT32 = A8R8G8B8, // 0xAARRGGBB -- X8R8G8B8_UINT32 = X8R8G8B8, // 0x00RRGGBB --#else --# error "bad endianness" --#endif - - // The following values are OS and endian-independent synonyms. - // - // TODO(aosmond): When everything blocking bug 1581828 has been resolved, we - // can make this use R8B8G8A8 and R8B8G8X8 for non-Windows platforms. - OS_RGBA = A8R8G8B8_UINT32, - OS_RGBX = X8R8G8B8_UINT32 - }; -diff --git a/gfx/skia/skia/third_party/skcms/skcms.cc b/gfx/skia/skia/third_party/skcms/skcms.cc ---- a/gfx/skia/skia/third_party/skcms/skcms.cc -+++ b/gfx/skia/skia/third_party/skcms/skcms.cc -@@ -25,16 +25,18 @@ - // it'd be a lot slower. But we want all those headers included so we - // can use their features after runtime checks later. - #include <smmintrin.h> - #include <avxintrin.h> - #include <avx2intrin.h> - #include <avx512fintrin.h> - #include <avx512dqintrin.h> - #endif -+#else -+ #define SKCMS_PORTABLE - #endif - - // sizeof(x) will return size_t, which is 32-bit on some machines and 64-bit on others. - // We have better testing on 64-bit machines, so force 32-bit machines to behave like 64-bit. - // - // Please do not use sizeof() directly, and size_t only when required. - // (We have no way of enforcing these requests...) - #define SAFE_SIZEOF(x) ((uint64_t)sizeof(x)) -@@ -275,30 +277,38 @@ enum { - skcms_Signature_sf32 = 0x73663332, - // XYZ is also a PCS signature, so it's defined in skcms.h - // skcms_Signature_XYZ = 0x58595A20, - }; - - static uint16_t read_big_u16(const uint8_t* ptr) { - uint16_t be; - memcpy(&be, ptr, sizeof(be)); --#if defined(_MSC_VER) -+#if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__ -+ return be; -+#else -+ #if defined(_MSC_VER) - return _byteswap_ushort(be); --#else -+ #else - return __builtin_bswap16(be); -+ #endif - #endif - } - - static uint32_t read_big_u32(const uint8_t* ptr) { - uint32_t be; - memcpy(&be, ptr, sizeof(be)); --#if defined(_MSC_VER) -+#if __BYTE_ORDER == __ORDER_BIG_ENDIAN__ -+ return be; -+#else -+ #if defined(_MSC_VER) - return _byteswap_ulong(be); --#else -+ #else - return __builtin_bswap32(be); -+ #endif - #endif - } - - static int32_t read_big_i32(const uint8_t* ptr) { - return (int32_t)read_big_u32(ptr); - } - - static float read_big_fixed(const uint8_t* ptr) { diff --git a/mozilla-bmo1504834-part2.patch b/mozilla-bmo1504834-part2.patch deleted file mode 100644 index 25f7fbc2c14e..000000000000 --- a/mozilla-bmo1504834-part2.patch +++ /dev/null @@ -1,112 +0,0 @@ -# HG changeset patch -# Parent 9319844dca3133fa8bd7107079f1d1ddc5c0bf70 -Skia does not support big endian. The places to fix are too numerous and upstream (skia, not Mozilla) -has no interest in maintaining big endian. -So here we try to swizzle the input for skia, so that skia always works on LE, and when it comes -out again, we transform back to BE. - -diff --git a/gfx/2d/ConvolutionFilter.cpp b/gfx/2d/ConvolutionFilter.cpp ---- a/gfx/2d/ConvolutionFilter.cpp -+++ b/gfx/2d/ConvolutionFilter.cpp -@@ -29,32 +29,79 @@ bool ConvolutionFilter::GetFilterOffsetA - int32_t* aResultLength) { - if (aRowIndex >= mFilter->numValues()) { - return false; - } - mFilter->FilterForValue(aRowIndex, aResultOffset, aResultLength); - return true; - } - -+static void ByteSwapArray(uint8_t *u8Array, int32_t size) { -+ uint32_t *array = reinterpret_cast<uint32_t*>(u8Array); -+ for (int pxl = 0; pxl < size; ++pxl) { -+ // Use an endian swap to move the bytes, i.e. BGRA -> ARGB. -+ uint32_t rgba = array[pxl]; -+ array[pxl] = NativeEndian::swapToLittleEndian(rgba); -+ } -+} -+ - void ConvolutionFilter::ConvolveHorizontally(const uint8_t* aSrc, uint8_t* aDst, - bool aHasAlpha) { -+#if MOZ_BIG_ENDIAN() -+ int outputSize = mFilter->numValues(); -+ -+ // Input size isn't handed in, so we have to calculate it quickly -+ int inputSize = 0; -+ for (int xx = 0; xx < outputSize; ++xx) { -+ // Get the filter that determines the current output pixel. -+ int filterOffset, filterLength; -+ mFilter->FilterForValue(xx, &filterOffset, &filterLength); -+ inputSize = std::max(inputSize, filterOffset + filterLength); -+ } -+ -+ ByteSwapArray((uint8_t*)aSrc, inputSize); -+#endif -+ - SkOpts::convolve_horizontally(aSrc, *mFilter, aDst, aHasAlpha); -+ -+#if MOZ_BIG_ENDIAN() -+ ByteSwapArray((uint8_t*)aSrc, inputSize); -+ ByteSwapArray(aDst, outputSize); -+#endif - } - - void ConvolutionFilter::ConvolveVertically(uint8_t* const* aSrc, uint8_t* aDst, - int32_t aRowIndex, int32_t aRowSize, - bool aHasAlpha) { - MOZ_ASSERT(aRowIndex < mFilter->numValues()); - - int32_t filterOffset; - int32_t filterLength; - auto filterValues = - mFilter->FilterForValue(aRowIndex, &filterOffset, &filterLength); -+ -+#if MOZ_BIG_ENDIAN() -+ for (int filterY = 0; filterY < filterLength; filterY++) { -+ // Skia only knows LE, so we have to swizzle the input -+ ByteSwapArray(aSrc[filterY], aRowSize); -+ } -+#endif -+ - SkOpts::convolve_vertically(filterValues, filterLength, aSrc, aRowSize, aDst, - aHasAlpha); -+ -+#if MOZ_BIG_ENDIAN() -+ // After skia is finished, we swizzle back to BE, in case -+ // the input is used again somewhere else -+ for (int filterY = 0; filterY < filterLength; filterY++) { -+ ByteSwapArray(aSrc[filterY], aRowSize); -+ } -+ // The destination array as well -+ ByteSwapArray(aDst, aRowSize); -+#endif - } - - /* ConvolutionFilter::ComputeResizeFactor is derived from Skia's - * SkBitmapScaler/SkResizeFilter::computeFactors. It is governed by Skia's - * BSD-style license (see gfx/skia/LICENSE) and the following copyright: - * Copyright (c) 2015 Google Inc. - */ - bool ConvolutionFilter::ComputeResizeFilter(ResizeMethod aResizeMethod, -diff --git a/gfx/skia/skia/include/core/SkPreConfig.h b/gfx/skia/skia/include/core/SkPreConfig.h ---- a/gfx/skia/skia/include/core/SkPreConfig.h -+++ b/gfx/skia/skia/include/core/SkPreConfig.h -@@ -68,17 +68,17 @@ - #define SK_CPU_BENDIAN - #elif defined(__BYTE_ORDER__) && (__BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__) - #define SK_CPU_LENDIAN - #elif defined(__sparc) || defined(__sparc__) || \ - defined(_POWER) || defined(__powerpc__) || \ - defined(__ppc__) || defined(__hppa) || \ - defined(__PPC__) || defined(__PPC64__) || \ - defined(_MIPSEB) || defined(__ARMEB__) || \ -- defined(__s390__) || \ -+ defined(__s390__) || defined(__s390x__) || \ - (defined(__sh__) && defined(__BIG_ENDIAN__)) || \ - (defined(__ia64) && defined(__BIG_ENDIAN__)) - #define SK_CPU_BENDIAN - #else - #define SK_CPU_LENDIAN - #endif - #endif - diff --git a/mozilla-bmo1504834-part3.patch b/mozilla-bmo1504834-part3.patch deleted file mode 100644 index d07702e13554..000000000000 --- a/mozilla-bmo1504834-part3.patch +++ /dev/null @@ -1,64 +0,0 @@ -# HG changeset patch -# Parent d1d66f7e4d0e7fd45e91e4fcee07555e72046d48 -For FF68, AntiAliasing of XULTexts seem to be broken on big endian (s390x). Text and icons of the sandwich-menu to the -right of the address bar, as well as plugin-windows appears transparant, which usually means unreadable (white on white). - -diff --git a/gfx/skia/skia/include/private/SkNx.h b/gfx/skia/skia/include/private/SkNx.h ---- a/gfx/skia/skia/include/private/SkNx.h -+++ b/gfx/skia/skia/include/private/SkNx.h -@@ -233,17 +233,28 @@ struct SkNx<1,T> { - AI SkNx operator<<(int bits) const { return fVal << bits; } - AI SkNx operator>>(int bits) const { return fVal >> bits; } - - AI SkNx operator+(const SkNx& y) const { return fVal + y.fVal; } - AI SkNx operator-(const SkNx& y) const { return fVal - y.fVal; } - AI SkNx operator*(const SkNx& y) const { return fVal * y.fVal; } - AI SkNx operator/(const SkNx& y) const { return fVal / y.fVal; } - -+ // On Big endian the commented out variant doesn't work, -+ // and honestly, I have no idea why it exists in the first place. -+ // The reason its broken is, I think, that it defaults to the double-variant of ToBits() -+ // which gets a 64-bit integer, and FromBits returns 32-bit, -+ // cutting off the wrong half again. -+ // Overall, I see no reason to have ToBits and FromBits at all (even for floats/doubles). -+ // Still we are only "fixing" this for big endian and leave little endian alone (never touch a running system) -+#ifdef SK_CPU_BENDIAN -+ AI SkNx operator&(const SkNx& y) const { return fVal & y.fVal; } -+#else - AI SkNx operator&(const SkNx& y) const { return FromBits(ToBits(fVal) & ToBits(y.fVal)); } -+#endif - AI SkNx operator|(const SkNx& y) const { return FromBits(ToBits(fVal) | ToBits(y.fVal)); } - AI SkNx operator^(const SkNx& y) const { return FromBits(ToBits(fVal) ^ ToBits(y.fVal)); } - - AI SkNx operator==(const SkNx& y) const { return FromBits(fVal == y.fVal ? ~0 : 0); } - AI SkNx operator!=(const SkNx& y) const { return FromBits(fVal != y.fVal ? ~0 : 0); } - AI SkNx operator<=(const SkNx& y) const { return FromBits(fVal <= y.fVal ? ~0 : 0); } - AI SkNx operator>=(const SkNx& y) const { return FromBits(fVal >= y.fVal ? ~0 : 0); } - AI SkNx operator< (const SkNx& y) const { return FromBits(fVal < y.fVal ? ~0 : 0); } -diff --git a/gfx/skia/skia/src/opts/SkBlitMask_opts.h b/gfx/skia/skia/src/opts/SkBlitMask_opts.h ---- a/gfx/skia/skia/src/opts/SkBlitMask_opts.h -+++ b/gfx/skia/skia/src/opts/SkBlitMask_opts.h -@@ -198,17 +198,23 @@ namespace SK_OPTS_NS { - const SkAlpha* mask, size_t maskRB, - int w, int h) { - auto fn = [](const Sk4px& d, const Sk4px& aa) { - // = (s + d(1-sa))aa + d(1-aa) - // = s*aa + d(1-sa*aa) - // ~~~> - // a = 1*aa + d(1-1*aa) = aa + d(1-aa) - // c = 0*aa + d(1-1*aa) = d(1-aa) -+ -+ // For big endian we have to swap the alpha-mask from 0,0,0,255 to 255,0,0,0 -+#ifdef SK_CPU_BENDIAN -+ return Sk4px(Sk16b(aa) & Sk16b(255,0,0,0, 255,0,0,0, 255,0,0,0, 255,0,0,0)) -+#else - return Sk4px(Sk16b(aa) & Sk16b(0,0,0,255, 0,0,0,255, 0,0,0,255, 0,0,0,255)) -+#endif - + d.approxMulDiv255(aa.inv()); - }; - while (h --> 0) { - Sk4px::MapDstAlpha(w, dst, mask, fn); - dst += dstRB / sizeof(*dst); - mask += maskRB / sizeof(*mask); - } - } diff --git a/mozilla-bmo1504834-part4.patch b/mozilla-bmo1504834-part4.patch deleted file mode 100644 index a7052643d23e..000000000000 --- a/mozilla-bmo1504834-part4.patch +++ /dev/null @@ -1,40 +0,0 @@ -# HG changeset patch -# Parent 883d2c7fec80b9714ccfefa461a02f5b09e3ee09 -Problem description: Tab-titles that are too long to fit into a tab get faded out. - On big endian this is broken and instead of fading out, the - tab gets white and the font transparent, leading to an unreadable - tab-title -Solution: This is not a real solution, but a hack. The real solution would have been - to byte-swap the correct buffer, but I could not find it. - So the next best thing is to deactivate the fading-effect. Now all tab-titles - are readable, albeit not as pretty to look at as they could be. -Side-effects: I have not yet found an unwanted side-effect. - -diff --git a/gfx/2d/DrawTargetSkia.cpp b/gfx/2d/DrawTargetSkia.cpp ---- a/gfx/2d/DrawTargetSkia.cpp -+++ b/gfx/2d/DrawTargetSkia.cpp -@@ -1856,16 +1856,24 @@ void DrawTargetSkia::PushLayerWithBlend( - } - - SkCanvas::SaveLayerRec saveRec( - aBounds.IsEmpty() ? nullptr : &bounds, &paint, nullptr, clipImage.get(), - &clipMatrix, - SkCanvas::kPreserveLCDText_SaveLayerFlag | - (aCopyBackground ? SkCanvas::kInitWithPrevious_SaveLayerFlag : 0)); - -+#if MOZ_BIG_ENDIAN() -+ // Pushing a layer where an aMask is defined produces wrong output. -+ // We _should_ endian swap the data, but I couldn't find a workable way to do so -+ // Therefore I deactivate those layers in the meantime. -+ // The result is: Tab-titles that are longer than the available space should be faded out. -+ // The fading doesn't work, so we deactivate the fading-effect here. -+ if (!aMask) -+#endif - mCanvas->saveLayer(saveRec); - - SetPermitSubpixelAA(aOpaque); - - #ifdef MOZ_WIDGET_COCOA - CGContextRelease(mCG); - mCG = nullptr; - #endif diff --git a/mozilla-bmo1626236.patch b/mozilla-bmo1626236.patch deleted file mode 100644 index b4634ec4bf79..000000000000 --- a/mozilla-bmo1626236.patch +++ /dev/null @@ -1,85 +0,0 @@ -# HG changeset patch -# User msirringhaus@suse.de -# Date 1582805876 -3600 -# Thu Feb 27 13:17:56 2020 +0100 -# Node ID cc3d09abea31068e57f1ab918782f9f86fc6a158 -# Parent 9cd90914846f667f18babc491a74c164ae5d6e9f -imported patch decoder_workaround.patch - -diff -r 9cd90914846f image/decoders/nsGIFDecoder2.cpp ---- a/image/decoders/nsGIFDecoder2.cpp Thu Feb 27 12:57:14 2020 +0100 -+++ b/image/decoders/nsGIFDecoder2.cpp Fri Mar 27 13:06:18 2020 +0100 -@@ -422,6 +422,9 @@ - MOZ_ASSERT(mSwizzleFn); - uint8_t* data = reinterpret_cast<uint8_t*>(aColormap); - mSwizzleFn(data, data, aColors); -+#if MOZ_BIG_ENDIAN() -+ SwizzleRow(SurfaceFormat::A8R8G8B8, SurfaceFormat::B8G8R8A8)(data, data, aColors); -+#endif - } - - LexerResult nsGIFDecoder2::DoDecode(SourceBufferIterator& aIterator, -diff -r 9cd90914846f image/decoders/nsJPEGDecoder.cpp ---- a/image/decoders/nsJPEGDecoder.cpp Thu Feb 27 12:57:14 2020 +0100 -+++ b/image/decoders/nsJPEGDecoder.cpp Fri Mar 27 13:06:18 2020 +0100 -@@ -263,6 +263,9 @@ - case JCS_YCbCr: - // By default, we will output directly to BGRA. If we need to apply - // special color transforms, this may change. -+#if MOZ_BIG_ENDIAN() -+ mInfo.out_color_space = MOZ_JCS_EXT_NATIVE_ENDIAN_XRGB; -+#else - switch (SurfaceFormat::OS_RGBX) { - case SurfaceFormat::B8G8R8X8: - mInfo.out_color_space = JCS_EXT_BGRX; -@@ -277,6 +280,7 @@ - mState = JPEG_ERROR; - return Transition::TerminateFailure(); - } -+#endif - break; - case JCS_CMYK: - case JCS_YCCK: -diff -r 9cd90914846f image/decoders/nsPNGDecoder.cpp ---- a/image/decoders/nsPNGDecoder.cpp Thu Feb 27 12:57:14 2020 +0100 -+++ b/image/decoders/nsPNGDecoder.cpp Fri Mar 27 13:06:18 2020 +0100 -@@ -361,7 +361,7 @@ - IResumable* aOnResume) { - MOZ_ASSERT(!HasError(), "Shouldn't call DoDecode after error!"); - -- return mLexer.Lex(aIterator, aOnResume, -+ LexerResult res = mLexer.Lex(aIterator, aOnResume, - [=](State aState, const char* aData, size_t aLength) { - switch (aState) { - case State::PNG_DATA: -@@ -371,6 +371,14 @@ - } - MOZ_CRASH("Unknown State"); - }); -+ -+#if MOZ_BIG_ENDIAN() -+ if(res.is<TerminalState>() && res.as<TerminalState>() == TerminalState::SUCCESS) { -+ NativeEndian::swapToLittleEndianInPlace<uint32_t>((uint32_t*)(mImageData), mImageDataLength / 4); -+ } -+#endif -+ -+ return res; - } - - LexerTransition<nsPNGDecoder::State> nsPNGDecoder::ReadPNGData( -diff -r 9cd90914846f image/decoders/nsWebPDecoder.cpp ---- a/image/decoders/nsWebPDecoder.cpp Thu Feb 27 12:57:14 2020 +0100 -+++ b/image/decoders/nsWebPDecoder.cpp Fri Mar 27 13:06:18 2020 +0100 -@@ -237,7 +237,12 @@ - // WebP doesn't guarantee that the alpha generated matches the hint in the - // header, so we always need to claim the input is BGRA. If the output is - // BGRX, swizzling will mask off the alpha channel. -+#if MOZ_BIG_ENDIAN() -+ mBuffer.colorspace = MODE_ARGB; -+ SurfaceFormat inFormat = mFormat; -+#else - SurfaceFormat inFormat = SurfaceFormat::OS_RGBA; -+#endif - - SurfacePipeFlags pipeFlags = SurfacePipeFlags(); - if (mFormat == SurfaceFormat::OS_RGBA && diff --git a/mozilla-bmo531915.patch b/mozilla-bmo531915.patch deleted file mode 100644 index a573a9e6fbe2..000000000000 --- a/mozilla-bmo531915.patch +++ /dev/null @@ -1,29 +0,0 @@ -# HG changeset patch -# User Wolfgang Rosenauer <wr@rosenauer.org> -# Parent 7332dfc4c47d73f1b88850b7727d33096d68e329 - -diff --git a/modules/fdlibm/src/math_private.h b/modules/fdlibm/src/math_private.h ---- a/modules/fdlibm/src/math_private.h -+++ b/modules/fdlibm/src/math_private.h -@@ -25,17 +25,21 @@ - - #include "mozilla/EndianUtils.h" - - /* - * Emulate FreeBSD internal double types. - * Adapted from https://github.com/freebsd/freebsd-src/search?q=__double_t - */ - -+#ifdef __i386__ -+typedef long double __double_t; -+#else - typedef double __double_t; -+#endif - typedef __double_t double_t; - - /* - * The original fdlibm code used statements like: - * n0 = ((*(int*)&one)>>29)^1; * index of high word * - * ix0 = *(n0+(int*)&x); * high word of x * - * ix1 = *((1-n0)+(int*)&x); * low word of x * - * to dig two 32 bit words out of the 64 bit IEEE floating point diff --git a/mozilla-bmo849632.patch b/mozilla-bmo849632.patch deleted file mode 100644 index 9de64b91ea06..000000000000 --- a/mozilla-bmo849632.patch +++ /dev/null @@ -1,35 +0,0 @@ -# HG changeset patch -# Parent 3de59fe1b8708c01e134ce698c4232b8a854f617 -Problem: webGL sites are displayed in the wrong color (usually blue-ish) -Solution: Problem is with skia once again. Output of webgl seems endian-correct, but skia only - knows how to deal with little endian. - So we swizzle the output of webgl after reading it from readpixels() -Note: This does not fix all webGL sites, but is a step in the right direction - -diff --git a/gfx/gl/GLContext.h b/gfx/gl/GLContext.h ---- a/gfx/gl/GLContext.h -+++ b/gfx/gl/GLContext.h -@@ -1548,16 +1548,23 @@ class GLContext : public GenericAtomicRe - AFTER_GL_CALL; - } - - void raw_fReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, - GLenum format, GLenum type, GLvoid* pixels) { - BEFORE_GL_CALL; - mSymbols.fReadPixels(x, y, width, height, format, type, pixels); - OnSyncCall(); -+#if MOZ_BIG_ENDIAN() -+ uint8_t* itr = (uint8_t*)pixels; -+ for (GLsizei i = 0; i < width * height; i++) { -+ NativeEndian::swapToLittleEndianInPlace((uint32_t*)itr, 1); -+ itr += 4; -+ } -+#endif - AFTER_GL_CALL; - mHeavyGLCallsSinceLastFlush = true; - } - - void fReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, - GLenum format, GLenum type, GLvoid* pixels); - - public: diff --git a/mozilla-bmo998749.patch b/mozilla-bmo998749.patch deleted file mode 100644 index 50e22b56946e..000000000000 --- a/mozilla-bmo998749.patch +++ /dev/null @@ -1,29 +0,0 @@ -# HG changeset patch -# User msirringhaus@suse.de -# Date 1583738770 -3600 -# Mon Mar 09 08:26:10 2020 +0100 -# Node ID 34676feac1a542e409e22acf5b98735f8313b1ce -# Parent 506857dace0a08d1c9685e3ac264646590b3e27f -[mq]: mozilla-bmo998749.patch - -diff -r 506857dace0a -r 34676feac1a5 gfx/2d/FilterProcessing.h ---- a/gfx/2d/FilterProcessing.h Fri Feb 28 12:31:51 2020 +0100 -+++ b/gfx/2d/FilterProcessing.h Mon Mar 09 08:26:10 2020 +0100 -@@ -13,10 +13,17 @@ - namespace mozilla { - namespace gfx { - -+#if MOZ_BIG_ENDIAN() -+const ptrdiff_t B8G8R8A8_COMPONENT_BYTEOFFSET_B = 3; -+const ptrdiff_t B8G8R8A8_COMPONENT_BYTEOFFSET_G = 2; -+const ptrdiff_t B8G8R8A8_COMPONENT_BYTEOFFSET_R = 1; -+const ptrdiff_t B8G8R8A8_COMPONENT_BYTEOFFSET_A = 0; -+#else - const ptrdiff_t B8G8R8A8_COMPONENT_BYTEOFFSET_B = 0; - const ptrdiff_t B8G8R8A8_COMPONENT_BYTEOFFSET_G = 1; - const ptrdiff_t B8G8R8A8_COMPONENT_BYTEOFFSET_R = 2; - const ptrdiff_t B8G8R8A8_COMPONENT_BYTEOFFSET_A = 3; -+#endif - - class FilterProcessing { - public: diff --git a/mozilla-fix-top-level-asm.patch b/mozilla-fix-top-level-asm.patch deleted file mode 100644 index cb72a15b8447..000000000000 --- a/mozilla-fix-top-level-asm.patch +++ /dev/null @@ -1,66 +0,0 @@ -From 91bb79836ee274855393bdf6ab10e24899b1b349 Mon Sep 17 00:00:00 2001 -From: Martin Liska <mliska@suse.cz> -Date: Fri, 17 May 2019 14:41:35 +0200 -Subject: [PATCH] Fix top-level asm issue. - ---- - security/sandbox/linux/moz.build | 5 ++++- - 1 file changed, 4 insertions(+), 1 deletion(-) - -diff --git a/security/sandbox/linux/moz.build b/security/sandbox/linux/moz.build ---- a/security/sandbox/linux/moz.build -+++ b/security/sandbox/linux/moz.build -@@ -66,32 +66,32 @@ UNIFIED_SOURCES += [ - "../chromium/base/time/time_now_posix.cc", - "../chromium/sandbox/linux/bpf_dsl/bpf_dsl.cc", - "../chromium/sandbox/linux/bpf_dsl/codegen.cc", - "../chromium/sandbox/linux/bpf_dsl/dump_bpf.cc", - "../chromium/sandbox/linux/bpf_dsl/policy.cc", - "../chromium/sandbox/linux/bpf_dsl/policy_compiler.cc", - "../chromium/sandbox/linux/bpf_dsl/syscall_set.cc", - "../chromium/sandbox/linux/seccomp-bpf/die.cc", -- "../chromium/sandbox/linux/seccomp-bpf/syscall.cc", - "broker/SandboxBrokerCommon.cpp", - "Sandbox.cpp", - "SandboxBrokerClient.cpp", - "SandboxFilter.cpp", - "SandboxFilterUtil.cpp", - "SandboxHooks.cpp", - "SandboxInfo.cpp", - "SandboxLogging.cpp", - "SandboxOpenedFiles.cpp", - "SandboxReporterClient.cpp", - ] - - SOURCES += [ - "../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", "-Wno-error=stack-protector"] - SOURCES["../chromium/sandbox/linux/services/syscall_wrappers.cc"].flags += [ - "-Wno-empty-body", - ] -+ SOURCES['../chromium/sandbox/linux/seccomp-bpf/syscall.cc'].flags += [ -+ '-fno-lto' -+ ] - - # 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 - # forcing there to be only one partition. - for f in CONFIG["OS_CXXFLAGS"]: - if f.startswith("-flto") and CONFIG["CC_TYPE"] != "clang": - LDFLAGS += ["--param lto-partitions=1"] - diff --git a/mozilla-kde.patch b/mozilla-kde.patch index 32e7fe439258..75b090a69d0d 100644 --- a/mozilla-kde.patch +++ b/mozilla-kde.patch @@ -3,7 +3,7 @@ # Date 1559294891 -7200 # Fri May 31 11:28:11 2019 +0200 # Node ID c2aa7198fb925e7fde96abf65b6f68b9b755f112 -# Parent 0dd1b6436342922d434e7c818875b2a02a73b5ed +# Parent 8d1110b6918acc4e7d3f655d1e55f4b4ff630abe Description: Add KDE integration to Firefox (toolkit parts) Author: Wolfgang Rosenauer <wolfgang@rosenauer.org> Author: Lubos Lunak <lunak@suse.com> @@ -147,7 +147,7 @@ diff --git a/python/mozbuild/mozpack/chrome/manifest.py b/python/mozbuild/mozpac diff --git a/toolkit/components/downloads/moz.build b/toolkit/components/downloads/moz.build --- a/toolkit/components/downloads/moz.build +++ b/toolkit/components/downloads/moz.build -@@ -45,10 +45,14 @@ XPCOM_MANIFESTS += [ +@@ -46,10 +46,14 @@ XPCOM_MANIFESTS += [ if CONFIG["MOZ_PLACES"]: EXTRA_JS_MODULES += [ @@ -165,7 +165,7 @@ diff --git a/toolkit/components/downloads/moz.build b/toolkit/components/downloa diff --git a/toolkit/mozapps/downloads/HelperAppDlg.jsm b/toolkit/mozapps/downloads/HelperAppDlg.jsm --- a/toolkit/mozapps/downloads/HelperAppDlg.jsm +++ b/toolkit/mozapps/downloads/HelperAppDlg.jsm -@@ -1231,36 +1231,66 @@ nsUnknownContentTypeDialog.prototype = { +@@ -1252,36 +1252,66 @@ nsUnknownContentTypeDialog.prototype = { params.handlerApp && params.handlerApp.executable && params.handlerApp.executable.isFile() @@ -346,7 +346,7 @@ diff --git a/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp b/toolkit/sy diff --git a/toolkit/xre/moz.build b/toolkit/xre/moz.build --- a/toolkit/xre/moz.build +++ b/toolkit/xre/moz.build -@@ -91,17 +91,19 @@ elif CONFIG["MOZ_WIDGET_TOOLKIT"] == "co +@@ -92,17 +92,19 @@ elif CONFIG["MOZ_WIDGET_TOOLKIT"] == "co "../components/printingui", ] elif CONFIG["MOZ_WIDGET_TOOLKIT"] == "uikit": @@ -360,17 +360,17 @@ diff --git a/toolkit/xre/moz.build b/toolkit/xre/moz.build + "nsKDEUtils.cpp", "nsNativeAppSupportUnix.cpp", ] + CXXFLAGS += CONFIG["MOZ_X11_SM_CFLAGS"] else: UNIFIED_SOURCES += [ "nsNativeAppSupportDefault.cpp", ] - if CONFIG["MOZ_HAS_REMOTE"]: diff --git a/toolkit/xre/nsKDEUtils.cpp b/toolkit/xre/nsKDEUtils.cpp new file mode 100644 --- /dev/null +++ b/toolkit/xre/nsKDEUtils.cpp -@@ -0,0 +1,344 @@ +@@ -0,0 +1,321 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* 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 @@ -410,36 +410,13 @@ new file mode 100644 +#define MAKE_STR( n ) MAKE_STR2( n ) + +static bool getKdeSession() ++{ ++ if (PR_GetEnv("KDE_FULL_SESSION")) + { -+ Display* dpy = XOpenDisplay( NULL ); -+ if( dpy == NULL ) -+ return false; -+ Atom kde_full_session = XInternAtom( dpy, "KDE_FULL_SESSION", true ); -+ bool kde = false; -+ if( kde_full_session != None ) -+ { -+ int cnt; -+ if( Atom* props = XListProperties( dpy, DefaultRootWindow( dpy ), &cnt )) -+ { -+ for( int i = 0; -+ i < cnt; -+ ++i ) -+ { -+ if( props[ i ] == kde_full_session ) -+ { -+ kde = true; -+#ifdef DEBUG_KDE -+ fprintf( stderr, "KDE SESSION %d\n", kde ); -+#endif -+ break; -+ } -+ } -+ XFree( props ); -+ } -+ } -+ XCloseDisplay( dpy ); -+ return kde; ++ return true; + } ++ return false; ++} + +static bool getKdeSupport() + { @@ -831,12 +808,12 @@ diff --git a/uriloader/exthandler/HandlerServiceParent.cpp b/uriloader/exthandle diff --git a/uriloader/exthandler/moz.build b/uriloader/exthandler/moz.build --- a/uriloader/exthandler/moz.build +++ b/uriloader/exthandler/moz.build -@@ -80,17 +80,19 @@ else: +@@ -78,17 +78,19 @@ elif CONFIG["MOZ_WIDGET_TOOLKIT"] == "ui + else: + # These files can't be built in unified mode because they redefine LOG. SOURCES += [ osdir + "/nsOSHelperAppService.cpp", ] - if CONFIG["CC_TYPE"] in ("clang", "gcc"): - CXXFLAGS += ["-Wno-error=shadow"] if CONFIG["MOZ_WIDGET_TOOLKIT"] == "gtk": UNIFIED_SOURCES += [ @@ -851,7 +828,7 @@ diff --git a/uriloader/exthandler/moz.build b/uriloader/exthandler/moz.build ] elif CONFIG["MOZ_WIDGET_TOOLKIT"] == "windows": UNIFIED_SOURCES += [ -@@ -128,16 +130,17 @@ include("/ipc/chromium/chromium-config.m +@@ -126,16 +128,17 @@ include("/ipc/chromium/chromium-config.m FINAL_LIBRARY = "xul" LOCAL_INCLUDES += [ @@ -864,11 +841,11 @@ diff --git a/uriloader/exthandler/moz.build b/uriloader/exthandler/moz.build ] if CONFIG["MOZ_ENABLE_DBUS"]: - CXXFLAGS += CONFIG["TK_CFLAGS"] CXXFLAGS += CONFIG["MOZ_DBUS_CFLAGS"] if CONFIG["MOZ_WIDGET_TOOLKIT"] == "gtk": - CXXFLAGS += CONFIG["TK_CFLAGS"] + CXXFLAGS += CONFIG["MOZ_GTK3_CFLAGS"] + CXXFLAGS += CONFIG["MOZ_DBUS_GLIB_CFLAGS"] diff --git a/uriloader/exthandler/unix/nsCommonRegistry.cpp b/uriloader/exthandler/unix/nsCommonRegistry.cpp new file mode 100644 --- /dev/null @@ -1283,7 +1260,7 @@ diff --git a/uriloader/exthandler/unix/nsOSHelperAppService.cpp b/uriloader/exth diff --git a/widget/gtk/moz.build b/widget/gtk/moz.build --- a/widget/gtk/moz.build +++ b/widget/gtk/moz.build -@@ -137,16 +137,17 @@ FINAL_LIBRARY = "xul" +@@ -136,16 +136,17 @@ FINAL_LIBRARY = "xul" LOCAL_INCLUDES += [ "/layout/base", @@ -1340,7 +1317,7 @@ diff --git a/widget/gtk/nsFilePicker.cpp b/widget/gtk/nsFilePicker.cpp # include "Units.h" extern mozilla::LazyLogModule gWidgetLog; # define LOG(args) MOZ_LOG(gWidgetLog, mozilla::LogLevel::Debug, args) -@@ -242,17 +245,19 @@ nsFilePicker::AppendFilters(int32_t aFil +@@ -236,17 +239,19 @@ nsFilePicker::AppendFilters(int32_t aFil mAllowURLs = !!(aFilterMask & filterAllowURLs); return nsBaseFilePicker::AppendFilters(aFilterMask); } @@ -1361,7 +1338,7 @@ diff --git a/widget/gtk/nsFilePicker.cpp b/widget/gtk/nsFilePicker.cpp mFilters.AppendElement(filter); mFilterNames.AppendElement(name); -@@ -352,16 +357,39 @@ nsresult nsFilePicker::Show(int16_t* aRe +@@ -346,16 +351,39 @@ nsresult nsFilePicker::Show(int16_t* aRe return NS_OK; } @@ -1401,7 +1378,7 @@ diff --git a/widget/gtk/nsFilePicker.cpp b/widget/gtk/nsFilePicker.cpp GtkFileChooserAction action = GetGtkFileChooserAction(mMode); const gchar* accept_button; -@@ -581,16 +609,244 @@ void nsFilePicker::Done(void* file_choos +@@ -575,16 +603,244 @@ void nsFilePicker::Done(void* file_choos mCallback->Done(result); mCallback = nullptr; } else { @@ -1819,7 +1796,7 @@ diff --git a/xpcom/components/moz.build b/xpcom/components/moz.build ] if CONFIG["MOZ_WIDGET_TOOLKIT"] == "gtk": - CXXFLAGS += CONFIG["TK_CFLAGS"] + CXXFLAGS += CONFIG["MOZ_GTK3_CFLAGS"] if CONFIG["MOZ_ENABLE_DBUS"]: CXXFLAGS += CONFIG["MOZ_DBUS_GLIB_CFLAGS"] @@ -1827,7 +1804,7 @@ diff --git a/xpcom/components/moz.build b/xpcom/components/moz.build diff --git a/xpcom/io/nsLocalFileUnix.cpp b/xpcom/io/nsLocalFileUnix.cpp --- a/xpcom/io/nsLocalFileUnix.cpp +++ b/xpcom/io/nsLocalFileUnix.cpp -@@ -53,16 +53,17 @@ +@@ -54,16 +54,17 @@ #include "prproces.h" #include "nsIDirectoryEnumerator.h" #include "nsSimpleEnumerator.h" @@ -1845,7 +1822,7 @@ diff --git a/xpcom/io/nsLocalFileUnix.cpp b/xpcom/io/nsLocalFileUnix.cpp # include "prmem.h" # include "plbase64.h" -@@ -2023,62 +2024,77 @@ nsLocalFile::SetPersistentDescriptor(con +@@ -2071,62 +2072,77 @@ nsLocalFile::SetPersistentDescriptor(con NS_IMETHODIMP nsLocalFile::Reveal() { diff --git a/mozilla-nongnome-proxies.patch b/mozilla-nongnome-proxies.patch deleted file mode 100644 index 301ea588704d..000000000000 --- a/mozilla-nongnome-proxies.patch +++ /dev/null @@ -1,44 +0,0 @@ -# HG changeset patch -# User Wolfgang Rosenauer -# Date 1558442915 -7200 -# Tue May 21 14:48:35 2019 +0200 -# Node ID 6bcf2dfebc1ea2aa34e5cc61152709fc8e409dc5 -# Parent bd5d1f49975deb730064a16b3079edb53c4a5f84 -Do not use gconf for proxy settings if not running within Gnome -Index: toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp -=================================================================== -RCS file: /cvsroot/mozilla/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp,v -retrieving revision 1.1 - -diff --git a/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp b/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp ---- a/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp -+++ b/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp -@@ -49,20 +49,24 @@ NS_IMETHODIMP - nsUnixSystemProxySettings::GetMainThreadOnly(bool* aMainThreadOnly) { - // dbus prevents us from being threadsafe, but this routine should not block - // anyhow - *aMainThreadOnly = true; - return NS_OK; - } - - void nsUnixSystemProxySettings::Init() { -- mGSettings = do_GetService(NS_GSETTINGSSERVICE_CONTRACTID); -- if (mGSettings) { -- mGSettings->GetCollectionForSchema("org.gnome.system.proxy"_ns, -- getter_AddRefs(mProxySettings)); -+ const char* sessionType = PR_GetEnv("DESKTOP_SESSION"); -+ if (sessionType && !strcmp(sessionType, "gnome")) { -+ mGSettings = do_GetService(NS_GSETTINGSSERVICE_CONTRACTID); -+ if (mGSettings) { -+ mGSettings->GetCollectionForSchema( -+ "org.gnome.system.proxy"_ns, -+ getter_AddRefs(mProxySettings)); -+ } - } - } - - nsresult nsUnixSystemProxySettings::GetPACURI(nsACString& aResult) { - if (mProxySettings) { - nsCString proxyMode; - // Check if mode is auto - nsresult rv = mProxySettings->GetString("mode"_ns, proxyMode); diff --git a/mozilla-ntlm-full-path.patch b/mozilla-ntlm-full-path.patch deleted file mode 100644 index ce5b6a29e824..000000000000 --- a/mozilla-ntlm-full-path.patch +++ /dev/null @@ -1,28 +0,0 @@ -# HG changeset patch -# User Petr Cerny <pcerny@novell.com> -# Parent 7308e4a7c1f769f4bbbc90870b849cadd99495a6 -# Parent 2361c5db1e70e358b2158325e07fa15bb4569c2c -Bug 634334 - call to the ntlm_auth helper fails - -diff --git a/extensions/auth/nsAuthSambaNTLM.cpp b/extensions/auth/nsAuthSambaNTLM.cpp ---- a/extensions/auth/nsAuthSambaNTLM.cpp -+++ b/extensions/auth/nsAuthSambaNTLM.cpp -@@ -156,17 +156,17 @@ static uint8_t* ExtractMessage(const nsA - *aLen = (length / 4) * 3 - numEquals; - return reinterpret_cast<uint8_t*>(PL_Base64Decode(s, length, nullptr)); - } - - nsresult nsAuthSambaNTLM::SpawnNTLMAuthHelper() { - const char* username = PR_GetEnv("USER"); - if (!username) return NS_ERROR_FAILURE; - -- const char* const args[] = {"ntlm_auth", -+ const char* const args[] = {"/usr/bin/ntlm_auth", - "--helper-protocol", - "ntlmssp-client-1", - "--use-cached-creds", - "--username", - username, - nullptr}; - - bool isOK = SpawnIOChild(const_cast<char* const*>(args), &mChildPID, diff --git a/mozilla-sandbox-fips.patch b/mozilla-sandbox-fips.patch deleted file mode 100644 index 8894666dba9a..000000000000 --- a/mozilla-sandbox-fips.patch +++ /dev/null @@ -1,40 +0,0 @@ -From: meissner@suse.com, cgrobertson@suse.com -Subject: allow Firefox to access addtional process information -References: -http://bugzilla.suse.com/show_bug.cgi?id=1167132 -bsc#1174284 - Firefox tab just crashed in FIPS mode - -Index: firefox-93.0/security/sandbox/linux/Sandbox.cpp -=================================================================== ---- firefox-93.0.orig/security/sandbox/linux/Sandbox.cpp -+++ firefox-93.0/security/sandbox/linux/Sandbox.cpp -@@ -655,6 +655,7 @@ void SetMediaPluginSandbox(const char* a - auto files = new SandboxOpenedFiles(); - files->Add(std::move(plugin)); - files->Add("/dev/urandom", SandboxOpenedFile::Dup::YES); -+ files->Add("/dev/random", SandboxOpenedFile::Dup::YES); - files->Add("/etc/ld.so.cache"); // Needed for NSS in clearkey. - files->Add("/sys/devices/system/cpu/cpu0/tsc_freq_khz"); - files->Add("/sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq"); -Index: firefox-93.0/security/sandbox/linux/broker/SandboxBrokerPolicyFactory.cpp -=================================================================== ---- firefox-93.0.orig/security/sandbox/linux/broker/SandboxBrokerPolicyFactory.cpp -+++ firefox-93.0/security/sandbox/linux/broker/SandboxBrokerPolicyFactory.cpp -@@ -320,6 +320,8 @@ void SandboxBrokerPolicyFactory::InitCon - - // Read permissions - policy->AddPath(rdonly, "/dev/urandom"); -+ policy->AddPath(rdonly, "/dev/random"); -+ policy->AddPath(rdonly, "/proc/sys/crypto/fips_enabled"); - policy->AddPath(rdonly, "/proc/cpuinfo"); - policy->AddPath(rdonly, "/proc/meminfo"); - policy->AddDir(rdonly, "/sys/devices/cpu"); -@@ -792,6 +794,8 @@ SandboxBrokerPolicyFactory::GetSocketPro - auto policy = MakeUnique<SandboxBroker::Policy>(); - - policy->AddPath(rdonly, "/dev/urandom"); -+ policy->AddPath(rdonly, "/dev/random"); -+ policy->AddPath(rdonly, "/proc/sys/crypto/fips_enabled"); - policy->AddPath(rdonly, "/proc/cpuinfo"); - policy->AddPath(rdonly, "/proc/meminfo"); - policy->AddDir(rdonly, "/sys/devices/cpu"); diff --git a/psutil.patch b/psutil.patch new file mode 100644 index 000000000000..209de1e322ca --- /dev/null +++ b/psutil.patch @@ -0,0 +1,10 @@ +diff --git a/python/sites/mach.txt b/python/sites/mach.txt +--- a/python/sites/mach.txt ++++ b/python/sites/mach.txt +@@ -133,5 +133,5 @@ + # Mach gracefully handles the case where `psutil` is unavailable. + # We aren't (yet) able to pin packages in automation, so we have to + # support down to the oldest locally-installed version (5.4.2). +-pypi-optional:psutil>=5.4.2,<=5.8.0:telemetry will be missing some data ++pypi-optional:psutil>=5.4.2,<=5.9.0:telemetry will be missing some data + pypi-optional:zstandard>=0.11.1,<=0.17.0:zstd archives will not be possible to extract |