Date: Friday, April 12, 2013 @ 16:07:43 Author: foutrelis Revision: 182668
upgpkg: firefox 20.0.1-2 Rebuild with GCC 4.7.2 and PGO re-enabled for i686 (FS#34738). Modified: firefox/trunk/PKGBUILD ----------+ PKGBUILD | 50 +++++++++++++++++++------------------------------- 1 file changed, 19 insertions(+), 31 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2013-04-12 14:07:12 UTC (rev 182667) +++ PKGBUILD 2013-04-12 14:07:43 UTC (rev 182668) @@ -4,19 +4,19 @@ pkgname=firefox pkgver=20.0.1 -pkgrel=1 +pkgrel=2 pkgdesc="Standalone web browser from mozilla.org" -arch=(i686 x86_64) -license=(MPL GPL LGPL) -depends=(gtk2 mozilla-common libxt startup-notification mime-types dbus-glib alsa-lib - libnotify desktop-file-utils hicolor-icon-theme - libvpx libevent nss hunspell sqlite) -makedepends=(unzip zip diffutils python2 yasm mesa - autoconf2.13 libidl2 xorg-server-xvfb imake) +arch=('i686' 'x86_64') +license=('MPL' 'GPL' 'LGPL') +depends=('gtk2' 'mozilla-common' 'libxt' 'startup-notification' 'mime-types' + 'dbus-glib' 'alsa-lib' 'libvpx' 'libevent' 'nss' 'hunspell' 'sqlite' + 'libnotify' 'desktop-file-utils' 'hicolor-icon-theme') +makedepends=('unzip' 'zip' 'diffutils' 'python2' 'yasm' 'mesa' 'libidl2' + 'xorg-server-xvfb' 'imake') optdepends=('networkmanager: Location detection via available WiFi networks') url="http://www.mozilla.org/projects/firefox" install=firefox.install -options=(!emptydirs) +options=('!emptydirs') source=(https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/$pkgver/source/firefox-$pkgver.source.tar.bz2 mozconfig firefox.desktop firefox-install-dir.patch vendor.js shared-libs.patch) md5sums=('b822ff4b2348410587dec563235d9320' @@ -26,7 +26,7 @@ '0d053487907de4376d67d8f499c5502b' '52e52f840a49eb1d14be1c0065b03a93') -prepare() { +build() { cd mozilla-release cp ../mozconfig .mozconfig @@ -42,38 +42,26 @@ # WebRTC build tries to execute "python" and expects Python 2 ln -s /usr/bin/python2 "$srcdir/path/python" - # Use gold, as Mozilla can use some of its features, such as safe ICF - ln -s /usr/bin/ld.gold "$srcdir/path/ld" - # configure script misdetects the preprocessor without an optimization level # https://bugs.archlinux.org/task/34644 - sed -i '/ac_cpp=/s/$CPPFLAGS/& -O2/' configure -} + # TODO: re-enable when we're building with GCC >= 4.8 again + #sed -i '/ac_cpp=/s/$CPPFLAGS/& -O2/' configure -build() { - cd mozilla-release - export PATH="$srcdir/path:$PATH" export LDFLAGS="$LDFLAGS -Wl,-rpath,/usr/lib/firefox" export PYTHON="/usr/bin/python2" export MOZ_MAKE_FLAGS="$MAKEFLAGS" unset MAKEFLAGS - # Enable PGO for x86_64 only. i686 currently has problems: - # Either segfaults since gcc 4.8, or the linker runs out of memory - # If you discover that PGO again works on i686, please file a bug - if [[ $CARCH = x86_64 ]]; then - export DISPLAY=:99 - Xvfb -nolisten tcp -extension GLX -screen 0 1280x1024x24 $DISPLAY & - _fail=0 + # Enable PGO + export DISPLAY=:99 + Xvfb -nolisten tcp -extension GLX -screen 0 1280x1024x24 $DISPLAY & + _fail=0 - make -f client.mk build MOZ_PGO=1 || _fail=1 + make -f client.mk build MOZ_PGO=1 || _fail=1 - kill $! || true - return $_fail - else - make -f client.mk build - fi + kill $! || true + return $_fail } package() {