%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)
+%bcond_without 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]
+%bcond_with system_icu # build with system ICU (disabled due to crashes with system icu 58.2)
# On updating version, grab CVE links from:
# https://www.mozilla.org/security/known-vulnerabilities/firefox.html
# 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.12
-%define nss_ver 3.21.1
+%define nspr_ver 4.13.1
+%define nss_ver 3.28.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: 47.0
-Release: 2
+Version: 53.0
+Release: 1
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: 0bd5991a6c821dd1a34ead0f8bbb301a
+# Source0-md5: 73175f850d4ff6068c6af674df20477c
Source3: %{name}.desktop
Source4: %{name}.sh
Source5: vendor.js
Patch8: %{name}-system-virtualenv.patch
Patch9: %{name}-Disable-Firefox-Health-Report.patch
Patch10: freetype.patch
-Patch11: firefox-gtk3-20.patch
URL: https://www.mozilla.org/firefox/
BuildRequires: OpenGL-devel
BuildRequires: alsa-lib-devel
BuildRequires: bzip2-devel
BuildRequires: cairo-devel >= 1.10.2-5
BuildRequires: dbus-glib-devel >= 0.60
+BuildRequires: fontconfig-devel >= 1:2.7.0
BuildRequires: freetype-devel >= 1:2.1.8
BuildRequires: gcc-c++ >= 6:4.4
BuildRequires: glib2-devel >= 1:2.22
BuildRequires: libevent-devel >= 1.4.7
# standalone libffi 3.0.9 or gcc's from 4.5(?)+
BuildRequires: libffi-devel >= 6:3.0.9
-BuildRequires: libicu-devel >= 50.1
+%{?with_system_icu:BuildRequires: libicu-devel >= 58.1}
# requires libjpeg-turbo implementing at least libjpeg 6b API
BuildRequires: libjpeg-devel >= 6b
BuildRequires: libjpeg-turbo-devel
BuildRequires: libpng(APNG)-devel >= 0.10
-BuildRequires: libpng-devel >= 2:1.6.19
+BuildRequires: libpng-devel >= 2:1.6.25
BuildRequires: libstdc++-devel >= 6:4.4
-BuildRequires: libvpx-devel >= 1.3.0
+BuildRequires: libvpx-devel >= 1.5.0
BuildRequires: nspr-devel >= 1:%{nspr_ver}
BuildRequires: nss-devel >= 1:%{nss_ver}
BuildRequires: pango-devel >= 1:1.22.0
BuildRequires: rpm >= 4.4.9-56
BuildRequires: rpmbuild(macros) >= 1.601
BuildRequires: sed >= 4.0
-BuildRequires: sqlite3-devel >= 3.9.1
+BuildRequires: sqlite3-devel >= 3.17.0
BuildRequires: startup-notification-devel >= 0.8
BuildRequires: xorg-lib-libX11-devel
BuildRequires: xorg-lib-libXScrnSaver-devel
Group: X11/Libraries
Requires: cairo >= 1.10.2-5
Requires: dbus-glib >= 0.60
+Requires: fontconfig-libs >= 1:2.7.0
Requires: glib2 >= 1:2.22
%{!?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.19
+Requires: libpng >= 2:1.6.25
Requires: libpng(APNG) >= 0.10
-Requires: libvpx >= 1.3.0
+Requires: libvpx >= 1.5.0
Requires: pango >= 1:1.22.0
Requires: sqlite3 >= %{sqlite_build_version}
Requires: startup-notification >= 0.8
%patch8 -p2
%patch9 -p1
%patch10 -p2
-%patch11 -p1
%{__sed} -i -e '1s,/usr/bin/env python,%{__python},' xpcom/typelib/xpt/tools/xpt.py xpcom/idl-parser/xpidl/xpidl.py
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/obj-%{_target_cpu}
# Options for 'configure' (same as command-line options).
-ac_add_options --build=%{_target_platform}
ac_add_options --host=%{_target_platform}
ac_add_options --prefix=%{_prefix}
-ac_add_options --exec-prefix=%{_exec_prefix}
-ac_add_options --bindir=%{_bindir}
-ac_add_options --sbindir=%{_sbindir}
-ac_add_options --sysconfdir=%{_sysconfdir}
-ac_add_options --datadir=%{_datadir}
-ac_add_options --includedir=%{_includedir}
-ac_add_options --libdir=%{_libdir}
-ac_add_options --libexecdir=%{_libexecdir}
-ac_add_options --localstatedir=%{_localstatedir}
-ac_add_options --sharedstatedir=%{_sharedstatedir}
-ac_add_options --mandir=%{_mandir}
-ac_add_options --infodir=%{_infodir}
%if %{?debug:1}0
ac_add_options --disable-optimize
ac_add_options --enable-debug
ac_add_options --enable-crash-on-assert
%else
ac_add_options --disable-debug
-ac_add_options --disable-debug-modules
ac_add_options --enable-optimize="%{rpmcflags} -Os"
%endif
ac_add_options --disable-strip
-ac_add_options --disable-strip-libs
ac_add_options --disable-install-strip
%if %{with tests}
ac_add_options --enable-tests
%else
ac_add_options --disable-tests
%endif
-ac_add_options --disable-mochitest
%endif
-ac_add_options --disable-cpp-exceptions
ac_add_options --disable-crashreporter
-ac_add_options --disable-elf-dynstr-gc
ac_add_options --disable-gconf
ac_add_options --disable-gnomeui
-ac_add_options --disable-gnomevfs
-ac_add_options --disable-installer
-ac_add_options --disable-javaxpcom
-ac_add_options --disable-long-long-warning
ac_add_options --disable-necko-wifi
-ac_add_options --disable-pedantic
ac_add_options --disable-updater
-ac_add_options --disable-xterm-updates
-ac_add_options --enable-canvas
+ac_add_options --disable-rust
+ac_add_options --enable-alsa
ac_add_options --enable-chrome-format=omni
ac_add_options --enable-default-toolkit=%{?with_gtk3:cairo-gtk3}%{!?with_gtk3:cairo-gtk2}
ac_add_options --enable-extensions=default
ac_add_options --enable-gio
-ac_add_options --enable-gstreamer=1.0
-ac_add_options --enable-libxul
-ac_add_options --enable-mathml
-ac_add_options --enable-pango
ac_add_options --enable-readline
ac_add_options --enable-safe-browsing
%{?with_shared_js:ac_add_options --enable-shared-js}
ac_add_options --enable-startup-notification
-ac_add_options --enable-svg
ac_add_options --enable-system-cairo
ac_add_options --enable-system-ffi
ac_add_options --enable-system-hunspell
ac_add_options --enable-system-sqlite
ac_add_options --enable-url-classifier
-ac_add_options --enable-xinerama
%{?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
ac_add_options --with-system-bz2
-ac_add_options --with-system-icu
+ac_add_options --with%{!?with_system_icu:out}-system-icu
ac_add_options --with-system-jpeg
ac_add_options --with-system-libevent
ac_add_options --with-system-libvpx
ac_add_options --with-system-nspr
ac_add_options --with-system-nss
-ac_add_options --with-system-ply
ac_add_options --with-system-png
ac_add_options --with-system-zlib
ac_add_options --with-x
%{__make} -j1 -f client.mk profiledbuild \
AUTOCONF=/usr/bin/autoconf2_13 \
DESTDIR=obj-%{_target_cpu}/dist \
- CC="%{__cc}" \
- CXX="%{__cxx}" \
MOZ_MAKE_FLAGS="%{_smp_mflags}"
kill $XVFB_PID
%else
%{__make} -j1 -f client.mk build \
AUTOCONF=/usr/bin/autoconf2_13 \
- CC="%{__cc}" \
- CXX="%{__cxx}" \
MOZ_MAKE_FLAGS="%{_smp_mflags}"
%endif
cp -a %{SOURCE5} $RPM_BUILD_ROOT%{_datadir}/%{name}/browser/defaults/preferences/vendor.js
%endif
-# files created by firefox -register
-touch $RPM_BUILD_ROOT%{_libdir}/%{name}/browser/components/compreg.dat
-touch $RPM_BUILD_ROOT%{_libdir}/%{name}/browser/components/xpti.dat
-
cat << 'EOF' > $RPM_BUILD_ROOT%{_sbindir}/%{name}-chrome+xpcom-generate
#!/bin/sh
umask 022
%config(noreplace) %verify(not md5 mtime size) %{_browserpluginsconfdir}/blacklist.d/%{name}.*.blacklist
%dir %{_libdir}/%{name}/browser
-%dir %{_libdir}/%{name}/browser/components
%dir %{_libdir}/%{name}/browser/plugins
%dir %{_libdir}/%{name}/browser/features
%attr(755,root,root) %{_libdir}/%{name}/firefox-bin
%attr(755,root,root) %{_libdir}/%{name}/run-mozilla.sh
%{_libdir}/%{name}/application.ini
+%{_libdir}/%{name}/chrome.manifest
%{_libdir}/%{name}/browser/blocklist.xml
%{_libdir}/%{name}/browser/chrome.manifest
-%{_libdir}/%{name}/browser/components/components.manifest
-%attr(755,root,root) %{_libdir}/%{name}/browser/components/libbrowsercomps.so
# the signature of the default theme
%{_datadir}/%{name}/browser/extensions/{972ce4c6-7e08-4474-a285-3208198ce6fd}.xpi
%{_libdir}/%{name}/browser/omni.ja
-%{_libdir}/%{name}/webapprt
-%attr(755,root,root) %{_libdir}/%{name}/webapprt-stub
-%{_libdir}/%{name}/browser/features/loop@mozilla.org.xpi
+%{_libdir}/%{name}/browser/features/aushelper@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
-%ghost %{_libdir}/%{name}/browser/components/xpti.dat
+%{_libdir}/%{name}/browser/features/webcompat@mozilla.org.xpi
%attr(755,root,root) %{_libdir}/%{name}/plugin-container
%{_libdir}/%{name}/dictionaries
+%dir %{_libdir}/%{name}/fonts
+%{_libdir}/%{name}/fonts/EmojiOneMozilla.ttf
+
%dir %{_libdir}/%{name}/gmp-clearkey
%dir %{_libdir}/%{name}/gmp-clearkey/0.1
%{_libdir}/%{name}/gmp-clearkey/0.1/clearkey.info
%attr(755,root,root) %{_libdir}/%{name}/gmp-clearkey/0.1/libclearkey.so
+%{!?with_system_icu:%{_libdir}/%{name}//icudt58l.dat}
%files libs
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/%{name}/libxul.so
%attr(755,root,root) %{_libdir}/%{name}/libmozavcodec.so
%attr(755,root,root) %{_libdir}/%{name}/libmozavutil.so
+%attr(755,root,root) %{_libdir}/%{name}/libmozsandbox.so
%{_libdir}/%{name}/dependentlibs.list
%{_libdir}/%{name}/omni.ja
%if %{with gtk3}