diff --git a/extra/firefox/build b/extra/firefox/build index 3b25bfac..3e279a7b 100755 --- a/extra/firefox/build +++ b/extra/firefox/build @@ -13,23 +13,19 @@ export PATH="$PWD/autoconf/bin:$PATH" # Fix linker errors at runtime. export LDFLAGS="$LDFLAGS -Wl,-rpath=/usr/lib/firefox" -# Ensure that MOZ_TELEMETRY_REPORTING is unset. -unset MOZ_TELEMETRY_REPORTING +unset MOZ_TELEMETRY_REPORTING +export MOZ_NOSPAM=1 cd firefox -mv mozconfig .mozconfig - # Fix OOM errors. cores=$(nproc) -printf '%s\n' "mk_add_options MOZ_MAKE_FLAGS=\"-j$cores -l$cores\"" >> .mozconfig +printf '%s\n' "mk_add_options MOZ_MAKE_FLAGS=\"-j$cores -l$cores\"" >> mozconfig for patch in *.patch; do patch -p1 < "$patch" done -rm -f old-configure - ./mach build DESTDIR="$1" ./mach install diff --git a/extra/firefox/checksums b/extra/firefox/checksums index d03df8a3..3be93350 100644 --- a/extra/firefox/checksums +++ b/extra/firefox/checksums @@ -1,7 +1,7 @@ -9b3e6d8f99819f9eda9ebba403b644a2b96d19450b42cae422bbf4386902a840 firefox-68.0.2.source.tar.xz +f56f5fa5a4744be0b9acf259cb991254d708a50b9a0a12d1d846ffa5a6c409ac firefox-68.1.0esr.source.tar.xz f0611136bee505811e9ca11ca7ac188ef5323a8e2ef19cffd3edb3cf08fd791e autoconf-2.13.tar.gz 8355ff012e7380f9eec70f8e2c02d256f097943438c9cfba968cd06401c443df user.js -7e9f230955b37f9b9dccaa352d7fde63ce081095847b190f200f601727ee113a mozconfig +143c5f3348713eaa0850c9ba5b0233603a85764feda9fa5b267f9f4424d03f4c mozconfig 960d82bbfdc88c95f5cb4f2e1c1bf23dae7519b3b7203914d7b3ddbff1ba4c28 stab.h 315880530f09175788dfa48a1915bfa1e190bfd3e267988b9100cb93006c808c fix-fortify-system-wrappers.patch 026e778105ed4921d61b6f9935a861b7e9ba9ac8cc44d8516883c3b5bd7590c4 fix-musl.patch @@ -10,3 +10,4 @@ f0611136bee505811e9ca11ca7ac188ef5323a8e2ef19cffd3edb3cf08fd791e autoconf-2.13. b19aaae7fc45db643f8d2540d96919c745ea341e36d9aea2df40e3e90eb951f0 fix-toolkit.patch e24f71a6a0d8d4637b2081780c66b01be4eeb4dd496031270d0ae0b898be94d2 fix-tools.patch 5e0fcfde375837074baad21a8ab26aa442a7940617ebd074a6b238a48f2ceb63 fix-webrtc-glibcisms.patch +1d4a8f110d34da478f5597727eda9acacebd443dd86cce5bb64f898c01feabce mallinfo.patch diff --git a/extra/firefox/depends b/extra/firefox/depends index 9c386ef8..35a0b17f 100644 --- a/extra/firefox/depends +++ b/extra/firefox/depends @@ -1,4 +1,5 @@ alsa-lib +bzip2 cbindgen make clang make ffmpeg @@ -11,11 +12,15 @@ libXcomposite libXcursor libXrender libXt +libjpeg-turbo +libffi +libpng libvpx llvm make nasm make nodejs make perl make +pixman python make python2 make rust make diff --git a/extra/firefox/files/mozconfig b/extra/firefox/files/mozconfig index c1975193..3bf11ef8 100644 --- a/extra/firefox/files/mozconfig +++ b/extra/firefox/files/mozconfig @@ -1,31 +1,38 @@ ac_add_options --prefix=/usr ac_add_options --libdir=/usr/lib +ac_add_options --enable-official-branding +ac_add_options --enable-optimize="$CFLAGS" +ac_add_options --enable-install-strip +ac_add_options --enable-strip + ac_add_options --without-system-nspr ac_add_options --without-system-nss -ac_add_options --without-system-jpeg -ac_add_options --without-system-zlib -ac_add_options --without-system-bz2 +ac_add_options --with-system-jpeg +ac_add_options --with-system-zlib +ac_add_options --with-system-bz2 +ac_add_options --with-system-png + +# System 'libvpx' is too new. ac_add_options --without-system-libvpx -ac_add_options --without-system-png -ac_add_options --without-system-pixman -ac_add_options --without-system-ffi + +ac_add_options --with-system-pixman +ac_add_options --with-system-ffi ac_add_options --disable-gconf -ac_add_options --disable-install-strip -ac_add_options --disable-strip ac_add_options --disable-profiling ac_add_options --disable-accessibility -ac_add_options --enable-optimize="$CFLAGS" - -ac_add_options --enable-application=browser +ac_add_options --disable-tests ac_add_options --disable-system-extension-dirs -ac_add_options --enable-extensions=default,-skipgnomevfs,-skipgio ac_add_options --disable-parental-controls +ac_add_options --disable-debug-symbols +ac_add_options --disable-callgrind +ac_add_options --disable-vtune # musl -ac_add_options --disable-jemalloc +ac_add_options --disable-elf-hack ac_add_options --disable-gold +ac_add_options --disable-jemalloc ac_add_options --enable-release # ALSA/PulseAudio (removed in 70) @@ -34,7 +41,7 @@ ac_add_options --enable-alsa ac_add_options --disable-startup-notification -# Respect the user's privacy. +# Respect the user. export MOZ_SERVICES_METRICS=0 export MOZ_PAY=0 export MOZ_SERVICES_HEALTHREPORTER=0 @@ -42,10 +49,10 @@ export MOZ_SERVICES_FXACCOUNTS=0 export MOZ_SERVICES_METRICS=0 export MOZ_DATA_REPORTING=0 export MOZ_DEVICES=0 +export MOZ_REQUIRE_SIGNING=0 ac_add_options --disable-crashreporter ac_add_options --disable-updater ac_add_options --disable-dbus ac_add_options --disable-eme ac_add_options --disable-necko-wifi ac_add_options --disable-webrtc -ac_add_options --disable-tests diff --git a/extra/firefox/patches/mallinfo.patch b/extra/firefox/patches/mallinfo.patch new file mode 100644 index 00000000..0649413c --- /dev/null +++ b/extra/firefox/patches/mallinfo.patch @@ -0,0 +1,34 @@ +--- a/xpcom/base/nsMemoryReporterManager.cpp.orig 2019-03-19 17:12:20.844810044 +0100 ++++ b/xpcom/base/nsMemoryReporterManager.cpp 2019-03-19 17:13:32.505133615 +0100 +@@ -123,6 +123,7 @@ + return GetProcSelfSmapsPrivate(aN); + } + ++#ifdef __GLIBC__ + # ifdef HAVE_MALLINFO + # define HAVE_SYSTEM_HEAP_REPORTER 1 + static MOZ_MUST_USE nsresult SystemHeapSize(int64_t* aSizeOut) { +@@ -142,6 +143,7 @@ + return NS_OK; + } + # endif ++#endif // __GLIBC__ + + #elif defined(__DragonFly__) || defined(__FreeBSD__) || defined(__NetBSD__) || \ + defined(__OpenBSD__) || defined(__FreeBSD_kernel__) +@@ -642,6 +644,7 @@ + return NS_OK; + } + ++#ifdef __GLIBC__ + # define HAVE_SYSTEM_HEAP_REPORTER 1 + // Windows can have multiple separate heaps. During testing there were multiple + // heaps present but the non-default ones had sizes no more than a few 10s of +@@ -698,6 +701,7 @@ + *aSizeOut = heapsSize; + return NS_OK; + } ++#endif // __GLIBC__ + + struct SegmentKind { + DWORD mState; diff --git a/extra/firefox/sources b/extra/firefox/sources index 239ea928..d42de755 100644 --- a/extra/firefox/sources +++ b/extra/firefox/sources @@ -1,4 +1,4 @@ -https://archive.mozilla.org/pub/firefox/releases/68.0.2/source/firefox-68.0.2.source.tar.xz firefox/ +https://archive.mozilla.org/pub/firefox/releases/68.1.0esr/source/firefox-68.1.0esr.source.tar.xz firefox/ https://ftp.gnu.org/gnu/autoconf/autoconf-2.13.tar.gz autoconf2.13/ https://raw.githubusercontent.com/ghacksuserjs/ghacks-user.js/6618bf5f7693a15c77f863b6c5d9dabd5f72972a/user.js firefox/ files/mozconfig firefox/ @@ -10,3 +10,4 @@ patches/fix-seccomp-bpf.patch firefox/ patches/fix-toolkit.patch firefox/ patches/fix-tools.patch firefox/ patches/fix-webrtc-glibcisms.patch firefox/ +patches/mallinfo.patch firefox/ diff --git a/extra/firefox/version b/extra/firefox/version index f5c1b46b..1fcb6796 100644 --- a/extra/firefox/version +++ b/extra/firefox/version @@ -1 +1 @@ -68.0.2 4 +68.1.0esr 1