#
# Conditional build:
%bcond_with tests # enable tests (whatever they check)
-%bcond_with gtk3 # GTK+ 3.x instead of 2.x
+%bcond_without gtk3 # GTK+ 3.x instead of 2.x
%bcond_without kerberos # disable krb5 support
+%bcond_without official # official Firefox branding
%bcond_with pgo # PGO-enabled build (requires working $DISPLAY == :100)
# - disabled shared_js - https://bugzilla.mozilla.org/show_bug.cgi?id=1039964
%bcond_with shared_js # shared libmozjs library [broken]
# The actual sqlite version (see RHBZ#480989):
%define sqlite_build_version %(pkg-config --silence-errors --modversion sqlite3 2>/dev/null || echo ERROR)
-%define nspr_ver 4.10.8
-%define nss_ver 3.19.2
+%define nspr_ver 4.12
+%define nss_ver 3.21.1
Summary: Firefox web browser
Summary(hu.UTF-8): Firefox web böngésző
Summary(pl.UTF-8): Firefox - przeglądarka WWW
Name: firefox
-Version: 45.0.1
-Release: 1
+Version: 46.0.1
+Release: 3
License: MPL v2.0
Group: X11/Applications/Networking
Source0: http://releases.mozilla.org/pub/mozilla.org/firefox/releases/%{version}/source/firefox-%{version}.source.tar.xz
-# Source0-md5: ea1e436b278b933747d9de167310592c
+# Source0-md5: 3e3b90268b8a634f7c60a25eb3a04c8c
Source3: %{name}.desktop
Source4: %{name}.sh
Source5: vendor.js
Patch14: freetype.patch
URL: https://www.mozilla.org/firefox/
BuildRequires: OpenGL-devel
-BuildRequires: ImageMagick
-BuildRequires: ImageMagick-coder-png
-BuildRequires: ImageMagick-coder-svg
BuildRequires: alsa-lib-devel
BuildRequires: automake
BuildRequires: bzip2-devel
# requires libjpeg-turbo implementing at least libjpeg 6b API
BuildRequires: libjpeg-devel >= 6b
BuildRequires: libjpeg-turbo-devel
-# for rsvg-convert
-BuildRequires: librsvg
BuildRequires: libpng(APNG)-devel >= 0.10
-BuildRequires: libpng-devel >= 2:1.6.16
+BuildRequires: libpng-devel >= 2:1.6.19
BuildRequires: libstdc++-devel >= 6:4.4
BuildRequires: libvpx-devel >= 1.3.0
-BuildRequires: libxslt-progs >= 1.1.28
BuildRequires: nspr-devel >= 1:%{nspr_ver}
BuildRequires: nss-devel >= 1:%{nss_ver}
BuildRequires: pango-devel >= 1:1.22.0
BuildRequires: python-modules >= 1:2.5
%{?with_pgo:BuildRequires: python-modules-sqlite}
BuildRequires: python-simplejson
-BuildRequires: python-virtualenv >= 1.9.1-4
+BuildRequires: python-virtualenv >= 15
BuildRequires: readline-devel
BuildRequires: rpm >= 4.4.9-56
BuildRequires: rpmbuild(macros) >= 1.601
BuildRequires: sed >= 4.0
-BuildRequires: sqlite3-devel >= 3.8.11.1-3
+BuildRequires: sqlite3-devel >= 3.9.1
BuildRequires: startup-notification-devel >= 0.8
-BuildRequires: virtualenv
+BuildRequires: xorg-lib-libX11-devel
BuildRequires: xorg-lib-libXScrnSaver-devel
+BuildRequires: xorg-lib-libXcomposite-devel
+BuildRequires: xorg-lib-libXdamage-devel
BuildRequires: xorg-lib-libXext-devel
+BuildRequires: xorg-lib-libXfixes-devel
BuildRequires: xorg-lib-libXinerama-devel
BuildRequires: xorg-lib-libXt-devel
%{?with_pgo:BuildRequires: xorg-xserver-Xvfb}
+%ifarch %{x8664}
+BuildRequires: yasm >= 1.0.1
+%endif
BuildRequires: zip
BuildRequires: zlib-devel >= 1.2.3
BuildConflicts: %{name}-devel < %{version}
%{!?with_gtk3:Requires: gtk+2 >= 2:2.18.0}
%{?with_gtk3:Requires: gtk+3 >= 3.4.0}
Requires: libjpeg-turbo
-Requires: libpng >= 2:1.6.16
+Requires: libpng >= 2:1.6.19
Requires: libpng(APNG) >= 0.10
Requires: libvpx >= 1.3.0
Requires: pango >= 1:1.22.0
%patch6 -p1
%patch7 -p1
%patch8 -p2
-#%patch9 -p2
+%patch9 -p1
%patch11 -p2
%patch12 -p1
%patch14 -p2
cp -a xulrunner/installer/*.pc.in browser/installer/
+%{__sed} -i -e '1s,/usr/bin/env python,%{__python},' xpcom/typelib/xpt/tools/xpt.py xpcom/idl-parser/xpidl/xpidl.py
+
%if %{with pgo}
-sed -i -e 's@__BROWSER_PATH__@"../../dist/bin/firefox-bin"@' build/automation.py.in
+%{__sed} -i -e 's@__BROWSER_PATH__@"../../dist/bin/firefox-bin"@' build/automation.py.in
%endif
%build
ac_add_options --enable-system-sqlite
ac_add_options --enable-url-classifier
ac_add_options --enable-xinerama
-ac_add_options --enable-official-branding
+%{?with_official:ac_add_options --enable-official-branding}
ac_add_options --with-default-mozilla-five-home=%{_libdir}/%{name}
ac_add_options --with-distribution-id=org.pld-linux
ac_add_options --with-pthreads
chmod 755 $RPM_BUILD_ROOT%{_bindir}/firefox
# install icons and desktop file
-for i in 16 22 24 32 48 256; do
+for i in 16 32 48 %{?with_official:22 24 256}; do
install -d $RPM_BUILD_ROOT%{_iconsdir}/hicolor/${i}x${i}/apps
- cp -a ../browser/branding/official/default${i}.png \
+ cp -a ../browser/branding/%{!?with_official:un}official/default${i}.png \
$RPM_BUILD_ROOT%{_iconsdir}/hicolor/${i}x${i}/apps/firefox.png
done
%attr(755,root,root) %{_libdir}/%{name}/webapprt-stub
%{_libdir}/%{name}/browser/features/loop@mozilla.org.xpi
+%{_libdir}/%{name}/browser/features/e10srollout@mozilla.org.xpi
+%{_libdir}/%{name}/browser/features/firefox@getpocket.com.xpi
# files created by firefox -register
%ghost %{_libdir}/%{name}/browser/components/compreg.dat
%{?with_shared_js:%attr(755,root,root) %{_libdir}/%{name}/libmozjs.so}
%attr(755,root,root) %{_libdir}/%{name}/liblgpllibs.so
%attr(755,root,root) %{_libdir}/%{name}/libxul.so
+%attr(755,root,root) %{_libdir}/%{name}/libmozavcodec.so
+%attr(755,root,root) %{_libdir}/%{name}/libmozavutil.so
%{_libdir}/%{name}/dependentlibs.list
%{_libdir}/%{name}/omni.ja
+%if %{with gtk3}
+%dir %{_libdir}/%{name}/gtk2
+%attr(755,root,root) %{_libdir}/%{name}/gtk2/libmozgtk.so
+%attr(755,root,root) %{_libdir}/%{name}/libmozgtk.so
+%endif
%files devel
%defattr(644,root,root,755)