+# Conditional build:
+%bcond_without system_ffmpeg # build with internal ffmpeg library
+%bcond_without system_gtk # build with internal gtk library
+%bcond_without system_sqlite # build with internal sqlite library
+
%define realname firefox
+%define avcodec_soname_ver 57
+%define avutil_soname_ver 55
+%define gtk_soname_ver 0
+%define sqlite_soname_ver 0
Summary: Mozilla Firefox web browser
Summary(pl.UTF-8): Mozilla Firefox - przeglÄ…darka WWW
Name: mozilla-firefox-bin
-Version: 52.0.2
+Version: 54.0.1
Release: 1
License: MPL/LGPL
Group: X11/Applications/Networking
Source0: https://ftp.mozilla.org/pub/firefox/releases/%{version}/linux-i686/en-US/%{realname}-%{version}.tar.bz2?/%{realname}-%{version}.i686.tar.bz2
-# Source0-md5: 755de3b1ea05d7c83313c7a32dcc2a9d
+# Source0-md5: 7ff2116227379fedb20c2d506716d672
Source1: https://ftp.mozilla.org/pub/firefox/releases/%{version}/linux-x86_64/en-US/%{realname}-%{version}.tar.bz2?/%{realname}-%{version}.x8664.tar.bz2
-# Source1-md5: 877d12412f6ba19cda3168d5f0c90ceb
+# Source1-md5: 6acb8696058eb739052c3f21ed6cd1ca
Source2: %{name}.desktop
Source3: %{name}.sh
URL: https://www.mozilla.org/firefox/
BuildRequires: zip
Requires(post,postun): desktop-file-utils
Requires: browser-plugins >= 2.0
+Requires: cpuinfo(sse2)
+%{?with_system_ffmpeg:Requires: ffmpeg-libs >= 3.2}
+%{?with_system_gtk:Requires: gtk+3 >= 3.22}
Requires: myspell-common
-Requires: nspr >= 1:4.13.1
-Requires: nss >= 1:3.28.3
-Requires: sqlite3 >= 3.17.0
+Requires: nspr >= 1:4.14
+Requires: nss >= 1:3.30.2
+%{?with_system_sqlite:Requires: sqlite3 >= 3.17.0}
Suggests: pulseaudio
Provides: wwwbrowser
Obsoletes: mozilla-firebird
%define _firefoxdir %{_libdir}/%{name}
-%define moz_caps libmozalloc.so libmozsqlite3.so libxpcom.so libxul.so
+%define moz_caps libmozalloc.so libmozavcodec.so libmozavutil.so libclearkey.so liblgpllibs.so libmozgtk.so libmozsandbox.so libmozsqlite3.so libxpcom.so libxul.so
%define sqlite_caps libsqlite3.so
# list of files (regexps) which don't generate Provides
rm -r $RPM_BUILD_ROOT%{_libdir}/%{name}/dictionaries
ln -s %{_datadir}/myspell $RPM_BUILD_ROOT%{_libdir}/%{name}/dictionaries
+%if %{with system_ffmpeg}
+rm $RPM_BUILD_ROOT%{_libdir}/%{name}/libmozavcodec.so
+rm $RPM_BUILD_ROOT%{_libdir}/%{name}/libmozavutil.so
+ln -s %{_libdir}/libavcodec.so.%{avcodec_soname_ver} $RPM_BUILD_ROOT%{_libdir}/%{name}/libmozavcodec.so
+ln -s %{_libdir}/libavutil.so.%{avutil_soname_ver} $RPM_BUILD_ROOT%{_libdir}/%{name}/libmozavutil.so
+%endif
+
+%if %{with system_gtk}
+rm $RPM_BUILD_ROOT%{_libdir}/%{name}/libmozgtk.so
+ln -s %{_libdir}/libgtk-3.so.%{gtk_soname_ver} $RPM_BUILD_ROOT%{_libdir}/%{name}/libmozgtk.so
+%endif
+
+%if %{with system_sqlite}
# use system sqlite
rm $RPM_BUILD_ROOT%{_libdir}/%{name}/libmozsqlite3.so
-ln -s /%{_lib}/libsqlite3.so.0 $RPM_BUILD_ROOT%{_libdir}/%{name}/libmozsqlite3.so
+ln -s /%{_lib}/libsqlite3.so.%{sqlite_soname_ver} $RPM_BUILD_ROOT%{_libdir}/%{name}/libmozsqlite3.so
+%endif
# never package these
# nss
%attr(755,root,root) %{_libdir}/%{name}/firefox
%attr(755,root,root) %{_libdir}/%{name}/firefox-bin
%attr(755,root,root) %{_libdir}/%{name}/minidump-analyzer
-%attr(755,root,root) %{_libdir}/%{name}/precomplete
+%attr(755,root,root) %{_libdir}/%{name}/pingsender
%attr(755,root,root) %{_libdir}/%{name}/plugin-container
+%attr(755,root,root) %{_libdir}/%{name}/precomplete
%{_libdir}/%{name}/browser/chrome
%{_libdir}/%{name}/browser/icons
%dir %{_libdir}/%{name}/browser/features
%{_libdir}/%{name}/browser/features/aushelper@mozilla.org.xpi
-%{_libdir}/%{name}/browser/features/deployment-checker@mozilla.org.xpi
%{_libdir}/%{name}/browser/features/e10srollout@mozilla.org.xpi
%{_libdir}/%{name}/browser/features/firefox@getpocket.com.xpi
+%{_libdir}/%{name}/browser/features/screenshots@mozilla.org.xpi
%{_libdir}/%{name}/browser/features/webcompat@mozilla.org.xpi
%dir %{_libdir}/%{name}/browser/plugins
%dir %{_libdir}/%{name}/gmp-clearkey
%dir %{_libdir}/%{name}/gmp-clearkey/0.1
-%{_libdir}/%{name}/gmp-clearkey/0.1/clearkey.info
+%{_libdir}/%{name}/gmp-clearkey/0.1/manifest.json
%attr(755,root,root) %{_libdir}/%{name}/gmp-clearkey/0.1/libclearkey.so
%{_pixmapsdir}/%{name}.png