diff --git a/extra/firefox/PKGBUILD b/extra/firefox/PKGBUILD index 6ebc54262..7fcdfdb18 100644 --- a/extra/firefox/PKGBUILD +++ b/extra/firefox/PKGBUILD @@ -11,14 +11,14 @@ buildarch=12 highmem=1 pkgname=firefox -pkgver=57.0.4 +pkgver=58.0 pkgrel=1 pkgdesc="Standalone web browser from mozilla.org" arch=(x86_64) license=(MPL GPL LGPL) url="https://www.mozilla.org/firefox/" depends=(gtk3 gtk2 mozilla-common libxt startup-notification mime-types dbus-glib ffmpeg - nss hunspell sqlite ttf-font libpulse) + nss hunspell sqlite ttf-font libpulse libvpx icu) makedepends=(unzip zip diffutils python2 yasm mesa imake gconf inetutils xorg-server-xvfb autoconf2.13 rust mercurial clang llvm jack) optdepends=('networkmanager: Location detection via available WiFi networks' @@ -28,19 +28,12 @@ optdepends=('networkmanager: Location detection via available WiFi networks' options=(!emptydirs !makeflags !strip) source=(https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/$pkgver/source/firefox-$pkgver.source.tar.xz $pkgname.desktop firefox-symbolic.svg - 0001-Bug-1360278-Add-preference-to-trigger-context-menu-o.patch - 0002-Bug-1419426-Implement-browserSettings.contextMenuSho.patch - wifi-disentangle.patch wifi-fix-interface.patch - firefox-install-dir.patch no-plt.diff) -sha256sums=('97cced69abfd5c57d968f0095631f86beff4f7b61883edd5a4f207e7f9c43b33' + firefox-install-dir.patch no-crmf.diff) +sha256sums=('0e0a39caabf94d7467d8bb4008fa9e7340a7be57b8c78ccf0cf98791a3bfaaff' '677e1bde4c6b3cff114345c211805c7c43085038ca0505718a11e96432e9811a' 'a2474b32b9b2d7e0fb53a4c89715507ad1c194bef77713d798fa39d507def9e9' - 'd45c97782a77e7c5ebacfa7b983019f6bb831794d3c707abbe3bb01cddb80f72' - '52c56c33f7ab98232d9c0644965f149da9b7266f607c84b80aca8a5534cee3bb' - 'f068b84ad31556095145d8fefc012dd3d1458948533ed3fff6cbc7250b6e73ed' - 'e98a3453d803cc7ddcb81a7dc83f883230dd8591bdf936fc5a868428979ed1f1' 'a94f80abe65608cd49054a30acc31e4d0885fe5b2a38cf08ded5e5b51b87c99d' - 'ea8e1b871c0f1dd29cdea1b1a2e7f47bf4713e2ae7b947ec832dba7dfcc67daa') + 'fb85a538044c15471c12cf561d6aa74570f8de7b054a7063ef88ee1bdfc1ccbb') # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys) # Note: These are for Arch Linux use ONLY. For your own distribution, please @@ -62,18 +55,8 @@ prepare() { cd $pkgname-$pkgver patch -Np1 -i ../firefox-install-dir.patch - # https://bugzilla.mozilla.org/show_bug.cgi?id=1360278 - patch -Np1 -i ../0001-Bug-1360278-Add-preference-to-trigger-context-menu-o.patch - - # https://bugzilla.mozilla.org/show_bug.cgi?id=1419426 - patch -Np1 -i ../0002-Bug-1419426-Implement-browserSettings.contextMenuSho.patch - - # https://bugzilla.mozilla.org/show_bug.cgi?id=1314968 - patch -Np1 -i ../wifi-disentangle.patch - patch -Np1 -i ../wifi-fix-interface.patch - - # https://bugzilla.mozilla.org/show_bug.cgi?id=1382942 - patch -Np1 -i ../no-plt.diff + # https://bugzilla.mozilla.org/show_bug.cgi?id=1371991 + patch -Np1 -i ../no-crmf.diff echo -n "$_google_api_key" >google-api-key echo -n "$_mozilla_api_key" >mozilla-api-key @@ -106,6 +89,11 @@ ac_add_options --disable-webrtc # System libraries ac_add_options --with-system-zlib ac_add_options --with-system-bz2 +ac_add_options --with-system-icu +ac_add_options --with-system-jpeg +ac_add_options --with-system-libvpx +ac_add_options --with-system-nspr +ac_add_options --with-system-nss ac_add_options --enable-system-hunspell ac_add_options --enable-system-sqlite ac_add_options --enable-system-ffi @@ -210,8 +198,4 @@ END # https://bugzilla.mozilla.org/show_bug.cgi?id=658850 ln -srf "$pkgdir/usr/bin/$pkgname" \ "$pkgdir/usr/lib/$pkgname/firefox-bin" - - # Use system certificates - ln -srf "$pkgdir/usr/lib/libnssckbi.so" \ - "$pkgdir/usr/lib/$pkgname/libnssckbi.so" } diff --git a/extra/firefox/no-crmf.diff b/extra/firefox/no-crmf.diff new file mode 100644 index 000000000..242304eb4 --- /dev/null +++ b/extra/firefox/no-crmf.diff @@ -0,0 +1,15 @@ +diff --git i/old-configure.in w/old-configure.in +index 0a06e470d2085922..d41c8e9d5dd2dbfb 100644 +--- i/old-configure.in ++++ w/old-configure.in +@@ -2020,9 +2020,7 @@ if test -n "$_USE_SYSTEM_NSS"; then + AM_PATH_NSS(3.31, [MOZ_SYSTEM_NSS=1], [AC_MSG_ERROR([you don't have NSS installed or your version is too old])]) + fi + +-if test -n "$MOZ_SYSTEM_NSS"; then +- NSS_LIBS="$NSS_LIBS -lcrmf" +-else ++if test -z "$MOZ_SYSTEM_NSS"; then + NSS_CFLAGS="-I${DIST}/include/nss" + case "${OS_ARCH}" in + # Only few platforms have been tested with GYP diff --git a/extra/firefox/no-plt.diff b/extra/firefox/no-plt.diff deleted file mode 100644 index 9014f8b79..000000000 --- a/extra/firefox/no-plt.diff +++ /dev/null @@ -1,48 +0,0 @@ -diff --git i/security/nss/lib/freebl/mpi/mpi_x86.s w/security/nss/lib/freebl/mpi/mpi_x86.s -index 8f7e2130c3264754..b3ca1ce5b41b3771 100644 ---- i/security/nss/lib/freebl/mpi/mpi_x86.s -+++ w/security/nss/lib/freebl/mpi/mpi_x86.s -@@ -22,22 +22,41 @@ is_sse: .long -1 - # - .ifndef NO_PIC - .macro GET var,reg -- movl \var@GOTOFF(%ebx),\reg -+ call thunk.ax -+ addl $_GLOBAL_OFFSET_TABLE_, %eax -+ movl \var@GOTOFF(%eax),\reg - .endm - .macro PUT reg,var -- movl \reg,\var@GOTOFF(%ebx) -+ call thunk.dx -+ addl $_GLOBAL_OFFSET_TABLE_, %edx -+ movl \reg,\var@GOTOFF(%edx) - .endm - .else - .macro GET var,reg - movl \var,\reg - .endm - .macro PUT reg,var - movl \reg,\var - .endm - .endif - - .text - -+.ifndef NO_PIC -+.globl thunk.ax -+.hidden thunk.ax -+.type thunk.ax, @function -+thunk.ax: -+ movl (%esp),%eax -+ ret -+ -+.globl thunk.dx -+.hidden thunk.dx -+.type thunk.dx, @function -+thunk.dx: -+ movl (%esp),%edx -+ ret -+.endif - - # ebp - 36: caller's esi - # ebp - 32: caller's edi