summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libre/iceweasel/PKGBUILD38
-rw-r--r--libre/iceweasel/bug1654465.diff77
-rw-r--r--libre/iceweasel/libre.patch9
3 files changed, 98 insertions, 26 deletions
diff --git a/libre/iceweasel/PKGBUILD b/libre/iceweasel/PKGBUILD
index 03aa4126b..736e2b0ff 100644
--- a/libre/iceweasel/PKGBUILD
+++ b/libre/iceweasel/PKGBUILD
@@ -1,4 +1,4 @@
-# Maintainer (arch): Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
+# Maintainer (arch): Jan Alexander Steffens (heftig) <heftig@archlinux.org>
# Contributor (arch): Ionut Biru <ibiru@archlinux.org>
# Contributor (arch): Jakub Schmidtke <sjakub@gmail.com>
# Maintainer (connochaetos): Henry Jensen <hjensen@connochaetos.org>
@@ -44,9 +44,9 @@
pkgname=iceweasel
epoch=1
-pkgver=78.0.1
+pkgver=79.0
pkgrel=1
-pkgrel+=.parabola3
+pkgrel+=.parabola1
_brandingver=77.0
_brandingrel=1
pkgdesc="Standalone web browser derived from Mozilla Firefox"
@@ -57,7 +57,7 @@ url="https://wiki.parabola.nu/Iceweasel"
depends=(gtk3 libxt mime-types dbus-glib ffmpeg nss ttf-font libpulse)
makedepends=(unzip zip diffutils yasm mesa imake inetutils xorg-server-xvfb
autoconf2.13 rust clang llvm jack gtk2 nodejs cbindgen nasm
- python-setuptools python-psutil)
+ python-setuptools python-psutil lld)
# FIXME: 'mozilla-serarchplugins' package needs re-working (see note in prepare())
makedepends+=(quilt libxslt imagemagick git jq)
optdepends=('networkmanager: Location detection via available WiFi networks'
@@ -69,6 +69,7 @@ replaces=('firefox')
options=(!emptydirs !makeflags !strip)
source=(https://archive.mozilla.org/pub/firefox/releases/$pkgver/source/firefox-$pkgver.source.tar.xz{,.asc}
0001-Use-remoting-name-for-GDK-application-names.patch
+ bug1654465.diff
$pkgname.desktop)
source+=(https://repo.parabola.nu/other/iceweasel/${pkgname}_${_brandingver}-${_brandingrel}.branding.tar.xz{,.sig}
libre.patch
@@ -78,13 +79,14 @@ source_armv7h=(arm.patch
build-arm-libopus.patch)
source_i686=('rust-static-disable-network-test-on-static-libraries.patch'
'avoid-libxul-OOM-python-check.patch')
-sha256sums=('494d277b120028e036e2aee3f658d79afc895457dc6aadb1c02f0547ef1d66ca'
+sha256sums=('12a922855914ec6b4d4f06a4ac58bc549aca6bdafd3722d68a3d709a935e5713'
'SKIP'
'3bb7463471fb43b2163a705a79a13a3003d70fff4bbe44f467807ca056de9a75'
+ 'e577f7e5636deda0026b0e385186f3ecb2212c9b84b6a2949a1811dab3e410d6'
'44be8e819b8334ed36e9410d62dbc6c16dd8f8329a191403bfdce3cf2e9181fc'
'57ea7663a8bf3d9326cf17798db0846b987bd26f4a20670d9aa3a02a58a29471'
'SKIP'
- 'f9d0a6b4ecd82d28b130a9c08dc3b060b50f1f34fc47d2a4675f9d982d15b3b3'
+ '069f093e7aceec210b17472b65a26de6c926a50aeb3c413e532a8ec3742cf09c'
'0ed6b8efa00f73a96bceaba2d6a31fb11d416106729ab9b8289b191eb9acccfa'
'714998c5fc379f54a66ff80a845b7880169cd5b4094b77b719a99d33b65c0940')
sha256sums_i686=('125000a8d4eec602d51eebcb9c94fb48c3ec1f5162ea28116bfdfe14d1a34cf9'
@@ -104,6 +106,9 @@ prepare() {
echo "applying 0001-Use-remoting-name-for-GDK-application-names.patch"
patch -Np1 -i ../0001-Use-remoting-name-for-GDK-application-names.patch
+ # https://bugzilla.mozilla.org/show_bug.cgi?id=1654465
+ patch -Np1 -i ../bug1654465.diff
+
cat >../mozconfig <<END
ac_add_options --enable-application=browser
@@ -112,6 +117,8 @@ ac_add_options --enable-release
ac_add_options --enable-hardening
ac_add_options --enable-optimize
ac_add_options --enable-rust-simd
+ac_add_options --enable-linker=lld
+ac_add_options --disable-elf-hack
export CC='clang --target=x86_64-unknown-linux-gnu'
export CXX='clang++ --target=x86_64-unknown-linux-gnu'
export AR=llvm-ar
@@ -212,7 +219,8 @@ END
cp -aT -- ${brandingsrcdir}/branding ${brandingdestdir}
# TODO: dont know what aboutlogins.svg is supposed to be or where it is presented
# but it seems to be essential
- cp ${brandingdestdir}/iceweasel_logo.svg ${brandingdestdir}/content/aboutlogins.svg
+ tee "${brandingdestdir}/content/aboutlogins.svg" \
+ "${brandingdestdir}/content/about-logo.svg" < ${brandingdestdir}/iceweasel_logo.svg >/dev/null
# custom new tab page
# FIXME: the newtab page (aka "Start Page") has changed significantly
@@ -346,13 +354,13 @@ build() {
export MOZ_DEBUG_FLAGS=" "
export CFLAGS+=" -g0"
export CXXFLAGS+=" -g0"
- export LDFLAGS+=" -Wl,--no-keep-memory -Wl,--reduce-memory-overheads"
+ export LDFLAGS+=" -Wl,--no-keep-memory"
export RUSTFLAGS="-Cdebuginfo=0"
;;
i686)
# disable LTO (clang has issues on IA32)
export RUSTFLAGS+=" -Cdebuginfo=0 -Clto=off"
- export LDFLAGS+=" -Wl,--no-keep-memory -Wl,--reduce-memory-overheads"
+ export LDFLAGS+=" -Wl,--no-keep-memory"
# libvpx has some hard-coded compiler flags for MMX, SSE, SSE2, use the correct one
# per CARCH (75.0 uses an intrisic _mm_empty now, which required the corresponding
@@ -405,15 +413,11 @@ END
xvfb-run -s "-screen 0 1920x1080x24 -nolisten local" \
./mach python build/pgo/profileserver.py
- if [[ ! -s merged.profdata ]]; then
- echo "No profile data produced."
- return 1
- fi
+ stat -c "Profile data found (%s bytes)" merged.profdata
+ test -s merged.profdata
- if [[ ! -s jarlog ]]; then
- echo "No jar log produced."
- return 1
- fi
+ stat -c "Jar log found (%s bytes)" jarlog
+ test -s jarlog
echo "Removing instrumented browser..."
./mach clobber
diff --git a/libre/iceweasel/bug1654465.diff b/libre/iceweasel/bug1654465.diff
new file mode 100644
index 000000000..f9982cb4d
--- /dev/null
+++ b/libre/iceweasel/bug1654465.diff
@@ -0,0 +1,77 @@
+ build/moz.configure/rust.configure | 2 +-
+ config/makefiles/rust.mk | 5 +++++
+ .../mozbuild/test/configure/test_toolchain_configure.py | 14 --------------
+ 3 files changed, 6 insertions(+), 15 deletions(-)
+
+diff --git c/build/moz.configure/rust.configure i/build/moz.configure/rust.configure
+index aaa693059d95..c90ae5ca7b25 100644
+--- c/build/moz.configure/rust.configure
++++ i/build/moz.configure/rust.configure
+@@ -146,7 +146,7 @@ def rust_compiler(rustc_info, cargo_info, build_project):
+ or by directly running the installer from https://rustup.rs/
+ '''))
+ if build_project == 'tools/crashreporter':
+- rustc_min_version = Version('1.31.0')
++ rustc_min_version = Version('1.38.0')
+ else:
+ rustc_min_version = Version('1.43.0')
+ cargo_min_version = rustc_min_version
+diff --git c/config/makefiles/rust.mk i/config/makefiles/rust.mk
+index a9abcc9af4c0..b5c7973104ce 100644
+--- c/config/makefiles/rust.mk
++++ i/config/makefiles/rust.mk
+@@ -63,6 +63,11 @@ ifndef MOZ_DEBUG_RUST
+ ifeq (,$(findstring gkrust_gtest,$(RUST_LIBRARY_FILE)))
+ cargo_rustc_flags += -Clto
+ endif
++# Versions of rust >= 1.45 need -Cembed-bitcode=yes for all crates when
++# using -Clto.
++ifeq (,$(filter 1.38.% 1.39.% 1.40.% 1.41.% 1.42.% 1.43.% 1.44.%,$(RUSTC_VERSION)))
++RUSTFLAGS += -Cembed-bitcode=yes
++endif
+ endif
+ endif
+
+diff --git c/python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py i/python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py
+index e1921ece6865..759d4d98cc0d 100755
+--- c/python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py
++++ i/python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py
+@@ -1796,38 +1796,24 @@ class RustTest(BaseConfigureTest):
+ arm_arch=7, fpu='neon', thumb2=True, float_abi='softfp')),
+ 'thumbv7neon-linux-androideabi')
+
+- self.assertEqual(
+- self.get_rust_target('arm-unknown-linux-androideabi',
+- version='1.32.0',
+- arm_target=ReadOnlyNamespace(
+- arm_arch=7, fpu='neon', thumb2=True, float_abi='softfp')),
+- 'armv7-linux-androideabi')
+-
+ self.assertEqual(
+ self.get_rust_target('arm-unknown-linux-androideabi',
+ arm_target=ReadOnlyNamespace(
+ arm_arch=7, fpu='neon', thumb2=False, float_abi='softfp')),
+ 'armv7-linux-androideabi')
+
+ self.assertEqual(
+ self.get_rust_target('arm-unknown-linux-androideabi',
+ arm_target=ReadOnlyNamespace(
+ arm_arch=7, fpu='vfpv2', thumb2=True, float_abi='softfp')),
+ 'armv7-linux-androideabi')
+
+ self.assertEqual(
+ self.get_rust_target('armv7-unknown-linux-gnueabihf',
+ arm_target=ReadOnlyNamespace(
+ arm_arch=7, fpu='neon', thumb2=True, float_abi='hard')),
+ 'thumbv7neon-unknown-linux-gnueabihf')
+
+- self.assertEqual(
+- self.get_rust_target('armv7-unknown-linux-gnueabihf',
+- version='1.32.0',
+- arm_target=ReadOnlyNamespace(
+- arm_arch=7, fpu='neon', thumb2=True, float_abi='hard')),
+- 'armv7-unknown-linux-gnueabihf')
+-
+ self.assertEqual(
+ self.get_rust_target('armv7-unknown-linux-gnueabihf',
+ arm_target=ReadOnlyNamespace(
diff --git a/libre/iceweasel/libre.patch b/libre/iceweasel/libre.patch
index 4464fe5fe..bb0572adc 100644
--- a/libre/iceweasel/libre.patch
+++ b/libre/iceweasel/libre.patch
@@ -331,15 +331,6 @@ index 5bc3a4b6c2..afc8d388e2 100644
AboutLoginsOpenPreferences: { wantUntrusted: true },
AboutLoginsOpenSite: { wantUntrusted: true },
AboutLoginsRecordTelemetryEvent: { wantUntrusted: true },
-@@ -783,8 +781,6 @@ const listeners = {
- "AboutLogins:OpenFAQ": ["AboutLoginsParent"],
- "AboutLogins:GetHelp": ["AboutLoginsParent"],
- "AboutLogins:OpenPreferences": ["AboutLoginsParent"],
-- "AboutLogins:OpenMobileAndroid": ["AboutLoginsParent"],
-- "AboutLogins:OpenMobileIos": ["AboutLoginsParent"],
- "AboutLogins:OpenSite": ["AboutLoginsParent"],
- "AboutLogins:SortChanged": ["AboutLoginsParent"],
- "AboutLogins:Subscribe": ["AboutLoginsParent"],
diff --git a/browser/components/aboutlogins/AboutLoginsChild.jsm b/browser/components/aboutlogins/AboutLoginsChild.jsm
index a4cd976dd5..c24b42eed0 100644
--- a/browser/components/aboutlogins/AboutLoginsChild.jsm