Date: Monday, July 27, 2020 @ 22:03:21 Author: heftig Revision: 392595
79.0-1 Add a patch for https://bugzilla.mozilla.org/show_bug.cgi?id=1654465 Switch from ld.bfd to ld.lld to work around https://github.com/rust-lang/rust/issues/74657 Added: firefox/trunk/bug1654465.diff Modified: firefox/trunk/PKGBUILD -----------------+ PKGBUILD | 27 ++++++++++-------- bug1654465.diff | 77 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 92 insertions(+), 12 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2020-07-27 20:12:22 UTC (rev 392594) +++ PKGBUILD 2020-07-27 22:03:21 UTC (rev 392595) @@ -1,9 +1,9 @@ -# Maintainer: Jan Alexander Steffens (heftig) <[email protected]> +# Maintainer: Jan Alexander Steffens (heftig) <[email protected]> # Contributor: Ionut Biru <[email protected]> # Contributor: Jakub Schmidtke <[email protected]> pkgname=firefox -pkgver=78.0.2 +pkgver=79.0 pkgrel=1 pkgdesc="Standalone web browser from mozilla.org" arch=(x86_64) @@ -12,7 +12,7 @@ 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) optdepends=('networkmanager: Location detection via available WiFi networks' 'libnotify: Notification integration' 'pulseaudio: Audio support' @@ -21,10 +21,12 @@ 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) -sha256sums=('1aa00ec6d40a771d525b867b175be28eda096becc745875bcceb133a985750fc' +sha256sums=('12a922855914ec6b4d4f06a4ac58bc549aca6bdafd3722d68a3d709a935e5713' 'SKIP' '3bb7463471fb43b2163a705a79a13a3003d70fff4bbe44f467807ca056de9a75' + 'e577f7e5636deda0026b0e385186f3ecb2212c9b84b6a2949a1811dab3e410d6' '298eae9de76ec53182f38d5c549d0379569916eebf62149f9d7f4a7edef36abf') validpgpkeys=('14F26682D0916CDD81E37B6D61B7B526D98F0353') # Mozilla Software Releases <[email protected]> @@ -47,6 +49,9 @@ # https://bugzilla.mozilla.org/show_bug.cgi?id=1530052 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 + echo -n "$_google_api_key" >google-api-key echo -n "$_mozilla_api_key" >mozilla-api-key @@ -58,6 +63,8 @@ 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 @@ -121,15 +128,11 @@ 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 Added: bug1654465.diff =================================================================== --- bug1654465.diff (rev 0) +++ bug1654465.diff 2020-07-27 22:03:21 UTC (rev 392595) @@ -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(
