71c2a1
# Set for local builds only
71c2a1
%global disable_toolsets  0
71c2a1
71c2a1
# Use system nspr/nss? FIXME
71c2a1
%global system_nss        1
71c2a1
%define use_bundled_ffi   0
71c2a1
%define use_bundled_python 1
71c2a1
%define bundle_gnome_extension 0
71c2a1
71c2a1
# Don't use system hunspell for now
71c2a1
%global system_hunspell   0
71c2a1
%global system_sqlite     0
71c2a1
%global use_llvmts        1
71c2a1
71c2a1
%if 0%{?rhel} > 6
71c2a1
%global system_ffi        1
71c2a1
%else
71c2a1
%global system_ffi        0
71c2a1
%global use_llvmts        0
71c2a1
%endif
71c2a1
%if 0%{?rhel} < 8
71c2a1
%global use_dts           1
71c2a1
%endif
71c2a1
71c2a1
%if 0%{?rhel} == 7
71c2a1
%define use_bundled_python 0
71c2a1
%endif
71c2a1
71c2a1
%if 0%{?rhel} < 8
71c2a1
%global use_rustts        1
71c2a1
%endif
71c2a1
%global dts_version       7
71c2a1
%global rst_version       7
71c2a1
%global llvm_version      7
71c2a1
%if 0%{?rhel} == 8
71c2a1
%global rst_version       1.26
71c2a1
%global llvm_version      6.0
71c2a1
%endif
71c2a1
71c2a1
%if 0%{?disable_toolsets}
71c2a1
%global use_rustts        0
71c2a1
%global use_dts           0
71c2a1
%global use_llvmts        0
71c2a1
%endif
71c2a1
71c2a1
# Use system cairo?
71c2a1
%global system_cairo      0
71c2a1
71c2a1
# Use system libvpx?
71c2a1
%global system_libvpx     0
71c2a1
71c2a1
# Use system libicu?
71c2a1
%global system_libicu     0
71c2a1
71c2a1
# Big endian platforms
71c2a1
%ifarch ppc64 s390x
71c2a1
# Javascript Intl API is not supported on big endian platforms right now:
71c2a1
# https://bugzilla.mozilla.org/show_bug.cgi?id=1322212
71c2a1
%global big_endian        1
71c2a1
%endif
71c2a1
71c2a1
# Hardened build?
71c2a1
%global hardened_build    1
71c2a1
71c2a1
%global system_jpeg       1
71c2a1
71c2a1
%ifarch %{ix86} x86_64
71c2a1
%global run_tests         0
71c2a1
%else
71c2a1
%global run_tests         0
71c2a1
%endif
71c2a1
71c2a1
# Build as a debug package?
71c2a1
%global debug_build       0
71c2a1
71c2a1
%global default_bookmarks_file  %{_datadir}/bookmarks/default-bookmarks.html
71c2a1
%global firefox_app_id  \{ec8030f7-c20a-464f-9b0e-13a3a9e97384\}
71c2a1
# Minimal required versions
71c2a1
%global cairo_version 1.13.1
71c2a1
%global freetype_version 2.1.9
71c2a1
%if %{?system_libvpx}
71c2a1
%global libvpx_version 1.4.0
71c2a1
%endif
71c2a1
71c2a1
%if %{?system_nss}
71c2a1
%global nspr_version 4.19.0
71c2a1
# NSS/NSPR quite often ends in build override, so as requirement the version
71c2a1
# we're building against could bring us some broken dependencies from time to time.
71c2a1
#%global nspr_build_version %(pkg-config --silence-errors --modversion nspr 2>/dev/null || echo 65536)
71c2a1
%global nspr_build_version %{nspr_version}
71c2a1
%global nss_version 3.36.0
71c2a1
#%global nss_build_version %(pkg-config --silence-errors --modversion nss 2>/dev/null || echo 65536)
71c2a1
%global nss_build_version %{nss_version}
71c2a1
%endif
71c2a1
71c2a1
%if %{?system_sqlite}
71c2a1
%global sqlite_version 3.8.4.2
71c2a1
# The actual sqlite version (see #480989):
71c2a1
%global sqlite_build_version %(pkg-config --silence-errors --modversion sqlite3 2>/dev/null || echo 65536)
71c2a1
%endif
71c2a1
71c2a1
%define bundled_python_version 2.7.13
71c2a1
%define use_bundled_yasm        1
71c2a1
71c2a1
# GTK3 bundling
71c2a1
%define avoid_bundled_rebuild 0
71c2a1
%if 0%{?rhel} == 6
71c2a1
%define bundle_gtk3             1
71c2a1
# In-tree libffi is able to build on following platforms, we have to bundle it for the rest
71c2a1
%ifnarch x86_64 i686 aarch64
71c2a1
%define use_bundled_ffi         1
71c2a1
%endif
71c2a1
%endif
71c2a1
71c2a1
%define gtk3_nvr 3.22.26-1
71c2a1
%define gtk3_install_path %{mozappdir}/bundled
71c2a1
71c2a1
%if 0%{?bundle_gtk3}
71c2a1
# We could use %%include, but in %%files, %%post and other sections, but in these
71c2a1
# sections it could lead to syntax errors about unclosed %%if. Work around it by
71c2a1
# using the following macro
71c2a1
%define include_file() %{expand:%(cat '%1')}
71c2a1
%endif
71c2a1
71c2a1
71c2a1
%global mozappdir     %{_libdir}/%{name}
71c2a1
%global mozappdirdev  %{_libdir}/%{name}-devel-%{version}
71c2a1
%global langpackdir   %{mozappdir}/distribution/extensions
71c2a1
%global tarballdir    %{name}-%{version}
71c2a1
%global pre_version   esr
71c2a1
71c2a1
%global official_branding       1
71c2a1
%global build_langpacks         1
71c2a1
71c2a1
%global enable_mozilla_crashreporter       0
71c2a1
%if !%{debug_build}
71c2a1
%ifarch %{ix86} x86_64
71c2a1
%global enable_mozilla_crashreporter       0
71c2a1
%endif
71c2a1
%endif
71c2a1
71c2a1
Summary:        Mozilla Firefox Web browser
71c2a1
Name:           firefox
71c2a1
Version:        60.7.0
71c2a1
Release:        1%{?pre_tag}%{?dist}
71c2a1
URL:            https://www.mozilla.org/firefox/
71c2a1
License:        MPLv1.1 or GPLv2+ or LGPLv2+
71c2a1
%if 0%{?rhel} == 7
71c2a1
ExcludeArch:    s390 ppc
71c2a1
%endif
71c2a1
%if 0%{?rhel} == 6
71c2a1
ExclusiveArch:  i686 x86_64 ppc64 s390x
71c2a1
%endif
71c2a1
71c2a1
Source0:        https://hg.mozilla.org/releases/mozilla-release/archive/firefox-%{version}%{?pre_version}.source.tar.xz
71c2a1
%if %{build_langpacks}
71c2a1
Source1:        firefox-langpacks-%{version}%{?pre_version}-20190515.tar.xz
71c2a1
%endif
71c2a1
Source10:       firefox-mozconfig
71c2a1
Source12:       firefox-redhat-default-prefs.js
71c2a1
Source20:       firefox.desktop
71c2a1
Source21:       firefox.sh.in
71c2a1
Source23:       firefox.1
71c2a1
Source24:       mozilla-api-key
71c2a1
Source25:       firefox-symbolic.svg
71c2a1
Source26:       distribution.ini
71c2a1
Source27:       google-api-key
71c2a1
71c2a1
Source200:      gtk3-private-%{gtk3_nvr}.el6.src.rpm
71c2a1
Source201:      gtk3-private-%{gtk3_nvr}-post.inc
71c2a1
Source202:      gtk3-private-%{gtk3_nvr}-postun.inc
71c2a1
Source203:      gtk3-private-%{gtk3_nvr}-posttrans.inc
71c2a1
Source204:      gtk3-private-%{gtk3_nvr}-files.inc
71c2a1
Source205:      gtk3-private-%{gtk3_nvr}-setup-flags-env.inc
71c2a1
Source206:      gtk3-private-%{gtk3_nvr}-requires-provides-filter.inc
71c2a1
Source301:      yasm-1.2.0-3.el5.src.rpm
71c2a1
Source303:      libffi-3.0.13-18.el7_3.src.rpm
71c2a1
71c2a1
#Python 2.7
71c2a1
Source100:      https://www.python.org/ftp/python/%{bundled_python_version}/Python-%{bundled_python_version}.tar.xz
71c2a1
# Build patches
71c2a1
Patch3:         mozilla-build-arm.patch
71c2a1
Patch4:         build-mozconfig-fix.patch
71c2a1
Patch5:         build-gdk-version.patch
71c2a1
Patch6:         build-nss-version.patch
71c2a1
Patch26:        build-icu-big-endian.patch
71c2a1
# Also fixes s390x: https://bugzilla.mozilla.org/show_bug.cgi?id=1376268
71c2a1
Patch29:        build-big-endian.patch
71c2a1
# Always feel lucky for unsupported platforms:
71c2a1
# https://bugzilla.mozilla.org/show_bug.cgi?id=1347128
71c2a1
Patch37:        build-jit-atomic-always-lucky.patch
71c2a1
Patch40:        build-aarch64-skia.patch
71c2a1
Patch41:        build-debug-qcms.patch
71c2a1
Patch43:        xulrunner-24.0-jemalloc-ppc.patch
71c2a1
#Patch44:        firefox-disable-dbus-remote.patch
71c2a1
Patch45:        build-disable-elfhack.patch
71c2a1
71c2a1
# Fedora/RHEL specific patches
71c2a1
Patch215:        firefox-enable-addons.patch
71c2a1
Patch219:        rhbz-1173156.patch
71c2a1
Patch224:        mozilla-1170092.patch
71c2a1
Patch225:        mozilla-1005640-accept-lang.patch
71c2a1
#ARM run-time patch
71c2a1
Patch226:        rhbz-1354671.patch
71c2a1
Patch230:        rhbz-1503632-nss.patch
71c2a1
Patch231:        firefox-pipewire.patch
71c2a1
Patch232:        mozilla-526293.patch
71c2a1
71c2a1
# Upstream patches
71c2a1
Patch402:        mozilla-1196777.patch
71c2a1
Patch406:        mozilla-256180.patch
71c2a1
Patch413:        mozilla-1353817.patch
71c2a1
Patch415:        mozilla-1436242.patch
71c2a1
71c2a1
# Debian patches
71c2a1
71c2a1
%if %{?system_nss}
71c2a1
BuildRequires:  pkgconfig(nspr) >= %{nspr_version}
71c2a1
BuildRequires:  pkgconfig(nss) >= %{nss_version}
71c2a1
BuildRequires:  nss-static >= %{nss_version}
71c2a1
%endif
71c2a1
%if %{?system_cairo}
71c2a1
BuildRequires:  pkgconfig(cairo) >= %{cairo_version}
71c2a1
%endif
71c2a1
BuildRequires:  pkgconfig(libpng)
71c2a1
BuildRequires:  xz
71c2a1
BuildRequires:  libXt-devel
71c2a1
BuildRequires:  mesa-libGL-devel
71c2a1
Requires:       liberation-fonts-common
71c2a1
Requires:       liberation-sans-fonts
71c2a1
%if %{?system_jpeg}
71c2a1
BuildRequires:  libjpeg-devel
71c2a1
%endif
71c2a1
BuildRequires:  zip
71c2a1
BuildRequires:  bzip2-devel
71c2a1
BuildRequires:  pkgconfig(zlib)
71c2a1
BuildRequires:  pkgconfig(libIDL-2.0)
71c2a1
BuildRequires:  pkgconfig(gtk+-2.0)
71c2a1
BuildRequires:  krb5-devel
71c2a1
BuildRequires:  pkgconfig(pango)
71c2a1
BuildRequires:  pkgconfig(freetype2) >= %{freetype_version}
71c2a1
BuildRequires:  pkgconfig(xt)
71c2a1
BuildRequires:  pkgconfig(xrender)
71c2a1
%if %{?system_hunspell}
71c2a1
BuildRequires:  hunspell-devel
71c2a1
%endif
71c2a1
BuildRequires:  pkgconfig(libstartup-notification-1.0)
71c2a1
BuildRequires:  pkgconfig(libnotify)
71c2a1
BuildRequires:  pkgconfig(dri)
71c2a1
BuildRequires:  pkgconfig(libcurl)
71c2a1
BuildRequires:  dbus-glib-devel
71c2a1
%if %{?system_libvpx}
71c2a1
BuildRequires:  libvpx-devel >= %{libvpx_version}
71c2a1
%endif
71c2a1
BuildRequires:  autoconf213
71c2a1
BuildRequires:  pkgconfig(libpulse)
71c2a1
BuildRequires:  pkgconfig(gconf-2.0)
71c2a1
71c2a1
%if 0%{?use_dts}
71c2a1
BuildRequires:  devtoolset-%{dts_version}-gcc-c++
71c2a1
BuildRequires:  devtoolset-%{dts_version}-gcc
71c2a1
BuildRequires:  devtoolset-%{dts_version}-binutils
71c2a1
BuildRequires:  devtoolset-%{dts_version}-libatomic-devel
71c2a1
%if 0%{?use_llvmts}
71c2a1
BuildRequires:  llvm-toolset-%{llvm_version}
71c2a1
BuildRequires:  llvm-toolset-%{llvm_version}-llvm-devel
71c2a1
%endif
71c2a1
%endif
71c2a1
71c2a1
%if 0%{?rhel} == 8
71c2a1
BuildRequires:  cargo
71c2a1
BuildRequires:  rust >= 1.24
71c2a1
BuildRequires:  llvm >= %{llvm_version}
71c2a1
BuildRequires:  llvm-devel >= %{llvm_version}
71c2a1
BuildRequires:  clang >= %{llvm_version}
71c2a1
%else
71c2a1
%if 0%{?use_rustts}
71c2a1
BuildRequires:  rust-toolset-%{rst_version}-cargo
71c2a1
BuildRequires:  rust-toolset-%{rst_version}-rust >= 1.24
71c2a1
%endif
71c2a1
%if 0%{?use_llvmts}
71c2a1
BuildRequires:  llvm-toolset-%{llvm_version}
71c2a1
BuildRequires:  llvm-toolset-%{llvm_version}-llvm-devel
71c2a1
%endif
71c2a1
%endif
71c2a1
71c2a1
%if 0%{?use_bundled_python}
71c2a1
#%if 0%{?rhel} == 6
71c2a1
# Needed for Python in RHEL6
71c2a1
BuildRequires:  openssl-devel
71c2a1
#%endif
71c2a1
%endif
71c2a1
71c2a1
%if 0%{?rhel} == 8
71c2a1
BuildRequires:  pipewire-devel
71c2a1
%endif
71c2a1
71c2a1
%if 0%{?bundle_gtk3}
71c2a1
BuildRequires:        automake
71c2a1
BuildRequires:        autoconf
71c2a1
BuildRequires:        cups-devel
71c2a1
BuildRequires:        dbus-devel
71c2a1
BuildRequires:        desktop-file-utils
71c2a1
BuildRequires:        expat-devel
71c2a1
BuildRequires:        fontpackages-devel
71c2a1
BuildRequires:        gamin-devel
71c2a1
BuildRequires:        gettext-devel
71c2a1
BuildRequires:        git
71c2a1
BuildRequires:        intltool
71c2a1
BuildRequires:        jasper-devel
71c2a1
BuildRequires:        libepoxy-devel
71c2a1
BuildRequires:        libcroco-devel
71c2a1
BuildRequires:        libffi-devel
71c2a1
BuildRequires:        libpng-devel
71c2a1
BuildRequires:        libtiff-devel
71c2a1
BuildRequires:        libtool
71c2a1
BuildRequires:        libxml2-devel
71c2a1
BuildRequires:        libX11-devel
71c2a1
BuildRequires:        libXcomposite-devel
71c2a1
BuildRequires:        libXcursor-devel
71c2a1
BuildRequires:        libXinerama-devel
71c2a1
BuildRequires:        libXevie-devel
71c2a1
BuildRequires:        libXrandr-devel
71c2a1
BuildRequires:        libXrender-devel
71c2a1
BuildRequires:        libXtst-devel
71c2a1
BuildRequires:        mesa-libGL-devel
71c2a1
BuildRequires:        mesa-libEGL-devel
71c2a1
BuildRequires:        pixman-devel
71c2a1
BuildRequires:        rest-devel
71c2a1
BuildRequires:        readline-devel
71c2a1
# TODO: We miss that dependency in our bundled gtk3 package.
71c2a1
# As a hotfix we put it here and fix gtk3 in next release.
71c2a1
Requires:             mesa-libEGL%{?_isa}
71c2a1
Requires:             libcroco%{?_isa}
71c2a1
Requires:             mesa-libGL%{?_isa}
71c2a1
Requires:             bzip2-libs%{?_isa}
71c2a1
Requires:             libXtst%{?_isa}
71c2a1
%else
71c2a1
BuildRequires:        gtk3-devel
71c2a1
BuildRequires:        glib2-devel
71c2a1
%endif
71c2a1
71c2a1
Requires:       mozilla-filesystem
71c2a1
Requires:       p11-kit-trust
71c2a1
%if %{?system_nss}
71c2a1
Requires:       nspr >= %{nspr_build_version}
71c2a1
Requires:       nss >= %{nss_build_version}
71c2a1
%endif
71c2a1
71c2a1
%if 0%{?rhel} < 8
71c2a1
BuildRequires:  python2-devel
71c2a1
%endif
71c2a1
71c2a1
BuildRequires:  desktop-file-utils
71c2a1
BuildRequires:  system-bookmarks
71c2a1
Requires:       redhat-indexhtml
71c2a1
%if %{?system_sqlite}
71c2a1
BuildRequires:  pkgconfig(sqlite3) >= %{sqlite_version}
71c2a1
Requires:       sqlite >= %{sqlite_build_version}
71c2a1
%endif
71c2a1
71c2a1
71c2a1
%if %{?run_tests}
71c2a1
BuildRequires:  xorg-x11-server-Xvfb
71c2a1
%endif
71c2a1
71c2a1
%if %{?system_ffi}
71c2a1
  %if !%{use_bundled_ffi}0
71c2a1
BuildRequires:  pkgconfig(libffi)
71c2a1
  %endif
71c2a1
%endif
71c2a1
71c2a1
Obsoletes:      mozilla <= 37:1.7.13
71c2a1
Provides:       webclient
71c2a1
71c2a1
%description
71c2a1
Mozilla Firefox is an open-source web browser, designed for standards
71c2a1
compliance, performance and portability.
71c2a1
71c2a1
%if %{enable_mozilla_crashreporter}
71c2a1
%global moz_debug_prefix %{_prefix}/lib/debug
71c2a1
%global moz_debug_dir %{moz_debug_prefix}%{mozappdir}
71c2a1
%global uname_m %(uname -m)
71c2a1
%global symbols_file_name %{name}-%{version}.en-US.%{_os}-%{uname_m}.crashreporter-symbols.zip
71c2a1
%global symbols_file_path %{moz_debug_dir}/%{symbols_file_name}
71c2a1
%global _find_debuginfo_opts -p %{symbols_file_path} -o debugcrashreporter.list
71c2a1
%global crashreporter_pkg_name mozilla-crashreporter-%{name}-debuginfo
71c2a1
%package -n %{crashreporter_pkg_name}
71c2a1
Summary: Debugging symbols used by Mozilla's crash reporter servers
71c2a1
%description -n %{crashreporter_pkg_name}
71c2a1
This package provides debug information for Firefox, for use by
71c2a1
Mozilla's crash reporter servers.  If you are trying to locally
71c2a1
debug %{name}, you want to install %{name}-debuginfo instead.
71c2a1
%files -n %{crashreporter_pkg_name} -f debugcrashreporter.list
71c2a1
%endif
71c2a1
71c2a1
%if %{run_tests}
71c2a1
%global testsuite_pkg_name mozilla-%{name}-testresults
71c2a1
%package -n %{testsuite_pkg_name}
71c2a1
Summary: Results of testsuite
71c2a1
%description -n %{testsuite_pkg_name}
71c2a1
This package contains results of tests executed during build.
71c2a1
%files -n %{testsuite_pkg_name}
71c2a1
/test_results
71c2a1
%endif
71c2a1
71c2a1
#---------------------------------------------------------------------
71c2a1
71c2a1
%if %{?bundle_gnome_extension}
71c2a1
%package        -n firefox-gnome-shell-extension
71c2a1
%global         firefox_gnome_shell_addon_name addon-751081-latest.xpi
71c2a1
Summary:        Support for managing GNOME Shell Extensions through web browsers
71c2a1
Requires:       %{name}%{?_isa} = %{version}-%{release}
71c2a1
71c2a1
License:        GPLv3+
71c2a1
URL:            https://wiki.gnome.org/Projects/GnomeShellIntegrationForChrome
71c2a1
Source2:        https://addons.mozilla.org/firefox/downloads/latest/gnome-shell-integration/platform:2/%{firefox_gnome_shell_addon_name}
71c2a1
71c2a1
Requires:       dbus
71c2a1
Requires:       gnome-icon-theme
71c2a1
Requires:       gnome-shell
71c2a1
Requires:       hicolor-icon-theme
71c2a1
Requires:       mozilla-filesystem
71c2a1
71c2a1
%description -n firefox-gnome-shell-extension
71c2a1
Browser extension for Firefox and native host messaging connector that provides 
71c2a1
integration with GNOME Shell and the corresponding extensions repository 
71c2a1
https://extensions.gnome.org.
71c2a1
71c2a1
%files -n firefox-gnome-shell-extension
71c2a1
%{mozappdir}/distribution/extensions/chrome-gnome-shell@gnome.org.xpi
71c2a1
%endif # bundle_gnome_extension
71c2a1
71c2a1
%prep
71c2a1
%setup -q -T -c -n python -a 100
71c2a1
%setup -q -n %{tarballdir}
71c2a1
# Build patches, can't change backup suffix from default because during build
71c2a1
# there is a compare of config and js/config directories and .orig suffix is
71c2a1
# ignored during this compare.
71c2a1
71c2a1
%patch29 -p1 -b .big-endian
71c2a1
%patch37 -p1 -b .jit-atomic-lucky
71c2a1
%patch40 -p1 -b .aarch64-skia
71c2a1
%if %{?debug_build}
71c2a1
%patch41 -p1 -b .build-debug-qcms
71c2a1
%endif
71c2a1
%patch43 -p1 -b .jemalloc-ppc
71c2a1
# Disable DBus remote on RHEL6 as it does not build here.
71c2a1
#%if 0%{?rhel} == 6
71c2a1
#%patch44 -p1 -b .disable-dbus-remote
71c2a1
#%endif
71c2a1
%if 0%{?rhel} == 8
71c2a1
%patch45 -p1 -b .disable-elfhack
71c2a1
%endif
71c2a1
71c2a1
%patch3  -p1 -b .arm
71c2a1
%patch4  -p1 -b .build-mozconfig-fix
71c2a1
%patch5  -p1 -b .gdk-version
71c2a1
%patch6  -p1 -b .nss-version
71c2a1
71c2a1
# Fedora patches
71c2a1
%patch215 -p1 -b .addons
71c2a1
%patch219 -p1 -b .rhbz-1173156
71c2a1
%patch224 -p1 -b .1170092
71c2a1
%patch225 -p1 -b .1005640-accept-lang
71c2a1
%if 0%{?rhel} == 8
71c2a1
%patch231 -p1 -b .pipewire
71c2a1
%endif
71c2a1
%patch232 -p1 -b .mozilla-526293
71c2a1
71c2a1
# This ensures no migration of certdb to sqlite on the RHEL6 and RHEL7.
71c2a1
# This needs to stay for the future releases
71c2a1
%if 0%{?rhel} < 8
71c2a1
%patch230 -p1 -b .1503632-nss
71c2a1
%endif
71c2a1
71c2a1
#ARM run-time patch
71c2a1
%ifarch aarch64
71c2a1
%patch226 -p1 -b .1354671
71c2a1
%endif
71c2a1
71c2a1
%patch402 -p1 -b .1196777
71c2a1
%patch406 -p1 -b .256180
71c2a1
%patch413 -p1 -b .1353817
71c2a1
%patch415 -p1 -b .1436242
71c2a1
71c2a1
71c2a1
# Patch for big endian platforms only
71c2a1
%if 0%{?big_endian}
71c2a1
%patch26 -p1 -b .icu
71c2a1
%endif
71c2a1
71c2a1
%{__rm} -f .mozconfig
71c2a1
%{__cp} %{SOURCE10} .mozconfig
71c2a1
%if %{official_branding}
71c2a1
echo "ac_add_options --enable-official-branding" >> .mozconfig
71c2a1
%endif
71c2a1
%{__cp} %{SOURCE24} mozilla-api-key
71c2a1
%{__cp} %{SOURCE27} google-api-key
71c2a1
71c2a1
%if %{?system_nss}
71c2a1
echo "ac_add_options --with-system-nspr" >> .mozconfig
71c2a1
echo "ac_add_options --with-system-nss" >> .mozconfig
71c2a1
%else
71c2a1
echo "ac_add_options --without-system-nspr" >> .mozconfig
71c2a1
echo "ac_add_options --without-system-nss" >> .mozconfig
71c2a1
%endif
71c2a1
71c2a1
%if %{?system_sqlite}
71c2a1
echo "ac_add_options --enable-system-sqlite" >> .mozconfig
71c2a1
%else
71c2a1
echo "ac_add_options --disable-system-sqlite" >> .mozconfig
71c2a1
%endif
71c2a1
71c2a1
%if %{?system_cairo}
71c2a1
echo "ac_add_options --enable-system-cairo" >> .mozconfig
71c2a1
%else
71c2a1
echo "ac_add_options --disable-system-cairo" >> .mozconfig
71c2a1
%endif
71c2a1
71c2a1
%if 0%{?use_bundled_ffi}
71c2a1
echo "ac_add_options --enable-system-ffi" >> .mozconfig
71c2a1
%endif
71c2a1
%if 0%{?system_ffi}
71c2a1
echo "ac_add_options --enable-system-ffi" >> .mozconfig
71c2a1
%endif
71c2a1
71c2a1
%ifarch %{arm}
71c2a1
echo "ac_add_options --disable-elf-hack" >> .mozconfig
71c2a1
%endif
71c2a1
71c2a1
%if %{?system_hunspell}
71c2a1
echo "ac_add_options --enable-system-hunspell" >> .mozconfig
71c2a1
%else
71c2a1
echo "ac_add_options --disable-system-hunspell" >> .mozconfig
71c2a1
%endif
71c2a1
71c2a1
%if %{?debug_build}
71c2a1
echo "ac_add_options --enable-debug" >> .mozconfig
71c2a1
echo "ac_add_options --disable-optimize" >> .mozconfig
71c2a1
%else
71c2a1
%global optimize_flags "none"
71c2a1
%ifnarch s390 s390x
71c2a1
%global optimize_flags "-g -O2"
71c2a1
%endif
71c2a1
%ifarch armv7hl
71c2a1
# ARMv7 need that (rhbz#1426850)
71c2a1
%global optimize_flags "-g -O2 -fno-schedule-insns"
71c2a1
%endif
71c2a1
%ifarch ppc64le aarch64
71c2a1
%global optimize_flags "-g -O2"
71c2a1
%endif
71c2a1
%if %{optimize_flags} != "none"
71c2a1
echo 'ac_add_options --enable-optimize=%{?optimize_flags}' >> .mozconfig
71c2a1
%else
71c2a1
echo 'ac_add_options --enable-optimize' >> .mozconfig
71c2a1
%endif
71c2a1
echo "ac_add_options --disable-debug" >> .mozconfig
71c2a1
%endif
71c2a1
71c2a1
# Second arches fail to start with jemalloc enabled
71c2a1
%ifnarch %{ix86} x86_64
71c2a1
echo "ac_add_options --disable-jemalloc" >> .mozconfig
71c2a1
%endif
71c2a1
71c2a1
%ifnarch %{ix86} x86_64
71c2a1
echo "ac_add_options --disable-webrtc" >> .mozconfig
71c2a1
%endif
71c2a1
71c2a1
%if !%{enable_mozilla_crashreporter}
71c2a1
echo "ac_add_options --disable-crashreporter" >> .mozconfig
71c2a1
%endif
71c2a1
71c2a1
%if %{?run_tests}
71c2a1
echo "ac_add_options --enable-tests" >> .mozconfig
71c2a1
%endif
71c2a1
71c2a1
%if !%{?system_jpeg}
71c2a1
echo "ac_add_options --without-system-jpeg" >> .mozconfig
71c2a1
%else
71c2a1
echo "ac_add_options --with-system-jpeg" >> .mozconfig
71c2a1
%endif
71c2a1
71c2a1
%if %{?system_libvpx}
71c2a1
echo "ac_add_options --with-system-libvpx" >> .mozconfig
71c2a1
%else
71c2a1
echo "ac_add_options --without-system-libvpx" >> .mozconfig
71c2a1
%endif
71c2a1
71c2a1
%if %{?system_libicu}
71c2a1
echo "ac_add_options --with-system-icu" >> .mozconfig
71c2a1
%else
71c2a1
echo "ac_add_options --without-system-icu" >> .mozconfig
71c2a1
%endif
71c2a1
%ifarch s390 s390x
71c2a1
echo "ac_add_options --disable-ion" >> .mozconfig
71c2a1
%endif
71c2a1
71c2a1
%ifarch %{ix86}
71c2a1
echo "ac_add_options --disable-stylo" >> .mozconfig
71c2a1
%endif
71c2a1
%if 0%{?rhel} == 6
71c2a1
echo "ac_add_options --disable-stylo" >> .mozconfig
71c2a1
%endif
71c2a1
71c2a1
# Remove executable bit to make brp-mangle-shebangs happy.
71c2a1
chmod -x third_party/rust/itertools/src/lib.rs
71c2a1
71c2a1
#---------------------------------------------------------------------
71c2a1
71c2a1
%build
71c2a1
71c2a1
#GTK3 >>
71c2a1
%if ! 0%{?avoid_bundled_rebuild}
71c2a1
    rm -rf %{_buildrootdir}/*
71c2a1
%endif
71c2a1
export PATH="%{_buildrootdir}/bin:$PATH"
71c2a1
71c2a1
function install_rpms_to_current_dir() {
71c2a1
    PACKAGE_RPM=$(eval echo $1)
71c2a1
    PACKAGE_DIR=%{_rpmdir}
71c2a1
71c2a1
    if [ ! -f $PACKAGE_DIR/$PACKAGE_RPM ]; then
71c2a1
        # Hack for tps tests
71c2a1
        ARCH_STR=%{_arch}
71c2a1
        %ifarch i386 i686
71c2a1
            ARCH_STR="i?86"
71c2a1
        %endif
71c2a1
        PACKAGE_DIR="$PACKAGE_DIR/$ARCH_STR"
71c2a1
     fi
71c2a1
71c2a1
     for package in $(ls $PACKAGE_DIR/$PACKAGE_RPM)
71c2a1
     do
71c2a1
         echo "$package"
71c2a1
         rpm2cpio "$package" | cpio -idu
71c2a1
     done
71c2a1
}
71c2a1
71c2a1
function build_bundled_package() {
71c2a1
  PACKAGE_RPM=$1
71c2a1
  PACKAGE_FILES=$2
71c2a1
  PACKAGE_SOURCE=$3
71c2a1
  PACKAGE_DIR="%{_topdir}/RPMS"
71c2a1
71c2a1
  PACKAGE_ALREADY_BUILD=0
71c2a1
  %if %{?avoid_bundled_rebuild}
71c2a1
    if ls $PACKAGE_DIR/$PACKAGE_RPM; then
71c2a1
      PACKAGE_ALREADY_BUILD=1
71c2a1
    fi
71c2a1
    if ls $PACKAGE_DIR/%{_arch}/$PACKAGE_RPM; then
71c2a1
      PACKAGE_ALREADY_BUILD=1
71c2a1
    fi
71c2a1
  %endif
71c2a1
  if [ $PACKAGE_ALREADY_BUILD == 0 ]; then
71c2a1
    echo "Rebuilding $PACKAGE_RPM from $PACKAGE_SOURCE"; echo "==============================="
71c2a1
    rpmbuild --nodeps --rebuild $PACKAGE_SOURCE
71c2a1
  fi
71c2a1
71c2a1
  if [ ! -f $PACKAGE_DIR/$PACKAGE_RPM ]; then
71c2a1
    # Hack for tps tests
71c2a1
    ARCH_STR=%{_arch}
71c2a1
    %ifarch i386 i686
71c2a1
    ARCH_STR="i?86"
71c2a1
    %endif
71c2a1
    PACKAGE_DIR="$PACKAGE_DIR/$ARCH_STR"
71c2a1
  fi
71c2a1
  pushd $PACKAGE_DIR
71c2a1
  echo "Installing $PACKAGE_DIR/$PACKAGE_RPM"; echo "==============================="
71c2a1
  rpm2cpio $PACKAGE_DIR/$PACKAGE_RPM | cpio -iduv
71c2a1
  # Clean rpms to avoid including them to package
71c2a1
  %if ! 0%{?avoid_bundled_rebuild}
71c2a1
    rm -f $PACKAGE_FILES
71c2a1
  %endif
71c2a1
71c2a1
  PATH=$PACKAGE_DIR/usr/bin:$PATH
71c2a1
  export PATH
71c2a1
  LD_LIBRARY_PATH=$PACKAGE_DIR/usr/%{_lib}
71c2a1
  export LD_LIBRARY_PATH
71c2a1
  popd
71c2a1
}
71c2a1
71c2a1
# Build and install local yasm if needed
71c2a1
# ======================================
71c2a1
%if %{use_bundled_yasm}
71c2a1
  build_bundled_package 'yasm-1*.rpm' 'yasm-*.rpm' '%{SOURCE301}'
71c2a1
%endif
71c2a1
71c2a1
71c2a1
%if 0%{?bundle_gtk3}
71c2a1
   %if ! 0%{?avoid_bundled_rebuild}
71c2a1
    rpm -ivh %{SOURCE200}
71c2a1
    rpmbuild --nodeps --define '_prefix %{gtk3_install_path}' -ba %{_specdir}/gtk3-private.spec
71c2a1
   %endif
71c2a1
   rm -rf %{_buildrootdir}/*
71c2a1
   pushd %{_buildrootdir}
71c2a1
   install_rpms_to_current_dir gtk3-private-%{gtk3_nvr}*.rpm
71c2a1
   install_rpms_to_current_dir gtk3-private-devel-%{gtk3_nvr}*.rpm
71c2a1
   install_rpms_to_current_dir gtk3-private-rpm-scripts-%{gtk3_nvr}*.rpm
71c2a1
   popd
71c2a1
%endif
71c2a1
71c2a1
# If needed build the bundled python 2.7 and put it in the PATH
71c2a1
%if 0%{?use_bundled_python}
71c2a1
    pushd %{_builddir}/python/Python-%{bundled_python_version}
71c2a1
    #if ! 0%{?avoid_bundled_rebuild}
71c2a1
        # Build Python 2.7 and set environment
71c2a1
        # Pydebug set optimization to level 0, -O3 crashes on gcc 8 ATM
71c2a1
        ./configure --with-pydebug --prefix="%{_buildrootdir}" --exec-prefix="%{_buildrootdir}" --libdir="%{_buildrootdir}/lib"
71c2a1
    #endif
71c2a1
    make %{?_smp_mflags} install V=1
71c2a1
    popd
71c2a1
%endif
71c2a1
71c2a1
%if 0%{?bundle_gtk3}
71c2a1
# gtk3-private-3.22.26.el6-1-requires-provides-filter.inc
71c2a1
%include_file %{SOURCE206}
71c2a1
%endif
71c2a1
%if 0%{use_bundled_ffi}
71c2a1
  # Install libraries to the predefined location to later add them to the Firefox libraries
71c2a1
  rpm -ivh %{SOURCE303}
71c2a1
  rpmbuild --nodeps --define '_prefix %{gtk3_install_path}' -ba %{_specdir}/libffi.spec
71c2a1
  pushd %{_buildrootdir}
71c2a1
  install_rpms_to_current_dir 'libffi*.rpm'
71c2a1
  popd
71c2a1
  %filter_from_requires /libffi.so.6/d
71c2a1
%endif
71c2a1
%filter_setup
71c2a1
71c2a1
# GTK3 <<
71c2a1
71c2a1
%if %{?system_sqlite}
71c2a1
# Do not proceed with build if the sqlite require would be broken:
71c2a1
# make sure the minimum requirement is non-empty, ...
71c2a1
sqlite_version=$(expr "%{sqlite_version}" : '\([0-9]*\.\)[0-9]*\.') || exit 1
71c2a1
# ... and that major number of the computed build-time version matches:
71c2a1
case "%{sqlite_build_version}" in
71c2a1
  "$sqlite_version"*) ;;
71c2a1
  *) exit 1 ;;
71c2a1
esac
71c2a1
%endif
71c2a1
71c2a1
# We need to disable exit on error temporarily for the following scripts:
71c2a1
set +e
71c2a1
%if 0%{?use_dts}
71c2a1
source scl_source enable devtoolset-%{dts_version}
71c2a1
%endif
71c2a1
%if 0%{?use_rustts}
71c2a1
source scl_source enable rust-toolset-%{rst_version}
71c2a1
%endif
71c2a1
71c2a1
set -e
71c2a1
# Hack for missing shell when building in brew on RHEL6
71c2a1
%if 0%{?rhel} == 6
71c2a1
export SHELL=/bin/sh
71c2a1
%endif
71c2a1
71c2a1
echo "Generate big endian version of config/external/icu/data/icud58l.dat"
71c2a1
%if 0%{?big_endian}
71c2a1
  ./mach python intl/icu_sources_data.py .
71c2a1
  ls -l config/external/icu/data
71c2a1
  rm -f config/external/icu/data/icudt*l.dat
71c2a1
%endif
71c2a1
71c2a1
# Update the various config.guess to upstream release for aarch64 support
71c2a1
find ./ -name config.guess -exec cp /usr/lib/rpm/config.guess {} ';'
71c2a1
71c2a1
# -fpermissive is needed to build with gcc 4.6+ which has become stricter
71c2a1
#
71c2a1
# Mozilla builds with -Wall with exception of a few warnings which show up
71c2a1
# everywhere in the code; so, don't override that.
71c2a1
#
71c2a1
# Disable C++ exceptions since Mozilla code is not exception-safe
71c2a1
#
71c2a1
MOZ_OPT_FLAGS=$(echo "%{optflags}" | %{__sed} -e 's/-Wall//')
71c2a1
#rhbz#1037063
71c2a1
# -Werror=format-security causes build failures when -Wno-format is explicitly given
71c2a1
# for some sources
71c2a1
# Explicitly force the hardening flags for Firefox so it passes the checksec test;
71c2a1
# See also https://fedoraproject.org/wiki/Changes/Harden_All_Packages
71c2a1
MOZ_OPT_FLAGS="$MOZ_OPT_FLAGS -Wformat-security -Wformat -Werror=format-security"
71c2a1
%if 0%{?fedora} > 23
71c2a1
# Disable null pointer gcc6 optimization in gcc6 (rhbz#1328045)
71c2a1
MOZ_OPT_FLAGS="$MOZ_OPT_FLAGS -fno-delete-null-pointer-checks"
71c2a1
%endif
71c2a1
# Use hardened build?
71c2a1
%if %{?hardened_build}
71c2a1
MOZ_OPT_FLAGS="$MOZ_OPT_FLAGS -fPIC -Wl,-z,relro -Wl,-z,now"
71c2a1
%endif
71c2a1
%if %{?debug_build}
71c2a1
MOZ_OPT_FLAGS=$(echo "$MOZ_OPT_FLAGS" | %{__sed} -e 's/-O2//')
71c2a1
%endif
71c2a1
%ifarch s390
71c2a1
MOZ_OPT_FLAGS=$(echo "$MOZ_OPT_FLAGS" | %{__sed} -e 's/-g/-g1/')
71c2a1
# If MOZ_DEBUG_FLAGS is empty, firefox's build will default it to "-g" which
71c2a1
# overrides the -g1 from line above and breaks building on s390
71c2a1
# (OOM when linking, rhbz#1238225)
71c2a1
export MOZ_DEBUG_FLAGS=" "
71c2a1
%endif
71c2a1
%ifarch s390 %{arm} ppc aarch64 i686
71c2a1
MOZ_LINK_FLAGS="-Wl,--no-keep-memory -Wl,--reduce-memory-overheads"
71c2a1
%endif
71c2a1
%ifarch %{arm}
71c2a1
export RUSTFLAGS="-Cdebuginfo=0"
71c2a1
%endif
71c2a1
export CFLAGS=$MOZ_OPT_FLAGS
71c2a1
export CXXFLAGS=$MOZ_OPT_FLAGS
71c2a1
export LDFLAGS=$MOZ_LINK_FLAGS
71c2a1
71c2a1
export PREFIX='%{_prefix}'
71c2a1
export LIBDIR='%{_libdir}'
71c2a1
71c2a1
MOZ_SMP_FLAGS=-j1
71c2a1
# On x86 architectures, Mozilla can build up to 4 jobs at once in parallel,
71c2a1
# however builds tend to fail on other arches when building in parallel.
71c2a1
%ifarch %{ix86} x86_64 ppc ppc64 ppc64le aarch64
71c2a1
[ -z "$RPM_BUILD_NCPUS" ] && \
71c2a1
     RPM_BUILD_NCPUS="`/usr/bin/getconf _NPROCESSORS_ONLN`"
71c2a1
[ "$RPM_BUILD_NCPUS" -ge 2 ] && MOZ_SMP_FLAGS=-j2
71c2a1
[ "$RPM_BUILD_NCPUS" -ge 4 ] && MOZ_SMP_FLAGS=-j4
71c2a1
[ "$RPM_BUILD_NCPUS" -ge 8 ] && MOZ_SMP_FLAGS=-j8
71c2a1
%endif
71c2a1
71c2a1
%if 0%{?bundle_gtk3}
71c2a1
# gtk3-private-setup-flags-env.inc
71c2a1
%include_file %{SOURCE205}
71c2a1
%endif
71c2a1
71c2a1
#make -f client.mk build STRIP="/bin/true" MOZ_MAKE_FLAGS="$MOZ_SMP_FLAGS" MOZ_SERVICES_SYNC="1"
71c2a1
export MOZ_MAKE_FLAGS="$MOZ_SMP_FLAGS"
71c2a1
export MOZ_SERVICES_SYNC="1"
71c2a1
export STRIP=/bin/true
71c2a1
%if 0%{?rhel} == 8
71c2a1
export LLVM_CONFIG=/usr/bin/llvm-config-64
71c2a1
%endif
71c2a1
./mach build -v
71c2a1
71c2a1
# create debuginfo for crash-stats.mozilla.com
71c2a1
%if %{enable_mozilla_crashreporter}
71c2a1
#cd %{moz_objdir}
71c2a1
make -C objdir buildsymbols
71c2a1
%endif
71c2a1
71c2a1
%if %{?run_tests}
71c2a1
%if %{?system_nss}
71c2a1
ln -s /usr/bin/certutil objdir/dist/bin/certutil
71c2a1
ln -s /usr/bin/pk12util objdir/dist/bin/pk12util
71c2a1
71c2a1
%endif
71c2a1
mkdir test_results
71c2a1
./mach --log-no-times check-spidermonkey &> test_results/check-spidermonkey || true
71c2a1
./mach --log-no-times check-spidermonkey &> test_results/check-spidermonkey-2nd-run || true
71c2a1
./mach --log-no-times cppunittest &> test_results/cppunittest || true
71c2a1
xvfb-run ./mach --log-no-times crashtest &> test_results/crashtest || true
71c2a1
./mach --log-no-times gtest &> test_results/gtest || true
71c2a1
xvfb-run ./mach --log-no-times jetpack-test &> test_results/jetpack-test || true
71c2a1
# not working right now ./mach marionette-test &> test_results/marionette-test || true
71c2a1
xvfb-run ./mach --log-no-times mochitest-a11y &> test_results/mochitest-a11y || true
71c2a1
xvfb-run ./mach --log-no-times mochitest-browser &> test_results/mochitest-browser || true
71c2a1
xvfb-run ./mach --log-no-times mochitest-chrome &> test_results/mochitest-chrome || true
71c2a1
xvfb-run ./mach --log-no-times mochitest-devtools &> test_results/mochitest-devtools || true
71c2a1
xvfb-run ./mach --log-no-times mochitest-plain &> test_results/mochitest-plain || true
71c2a1
xvfb-run ./mach --log-no-times reftest &> test_results/reftest || true
71c2a1
xvfb-run ./mach --log-no-times webapprt-test-chrome &> test_results/webapprt-test-chrome || true
71c2a1
xvfb-run ./mach --log-no-times webapprt-test-content &> test_results/webapprt-test-content || true
71c2a1
./mach --log-no-times webidl-parser-test &> test_results/webidl-parser-test || true
71c2a1
xvfb-run ./mach --log-no-times xpcshell-test &> test_results/xpcshell-test || true
71c2a1
%if %{?system_nss}
71c2a1
rm -f  objdir/dist/bin/certutil
71c2a1
rm -f  objdir/dist/bin/pk12util
71c2a1
%endif
71c2a1
71c2a1
%endif
71c2a1
#---------------------------------------------------------------------
71c2a1
71c2a1
%install
71c2a1
%if 0%{?rhel} == 6
71c2a1
export SHELL=/bin/sh
71c2a1
%endif
71c2a1
71c2a1
%if 0%{?bundle_gtk3}
71c2a1
function install_rpms_to_current_dir() {
71c2a1
    PACKAGE_RPM=$(eval echo $1)
71c2a1
    PACKAGE_DIR=%{_rpmdir}
71c2a1
71c2a1
    if [ ! -f $PACKAGE_DIR/$PACKAGE_RPM ]; then
71c2a1
        # Hack for tps tests
71c2a1
        ARCH_STR=%{_arch}
71c2a1
        %ifarch i386 i686
71c2a1
            ARCH_STR="i?86"
71c2a1
        %endif
71c2a1
        PACKAGE_DIR="$PACKAGE_DIR/$ARCH_STR"
71c2a1
     fi
71c2a1
71c2a1
     for package in $(ls $PACKAGE_DIR/$PACKAGE_RPM)
71c2a1
     do
71c2a1
         echo "$package"
71c2a1
         rpm2cpio "$package" | cpio -idu
71c2a1
     done
71c2a1
}
71c2a1
71c2a1
pushd %{buildroot}
71c2a1
# Install gtk3-private again to the buildroot, but without devel subpackage
71c2a1
install_rpms_to_current_dir gtk3-private-%{gtk3_nvr}*.rpm
71c2a1
install_rpms_to_current_dir gtk3-private-rpm-scripts-%{gtk3_nvr}*.rpm
71c2a1
popd
71c2a1
%endif
71c2a1
71c2a1
# Install bundled libffi
71c2a1
%if %{use_bundled_ffi}
71c2a1
  pushd %{buildroot}
71c2a1
  install_rpms_to_current_dir libffi-3*.rpm
71c2a1
  popd
71c2a1
%endif
71c2a1
71c2a1
# set up our default bookmarks
71c2a1
%{__cp} -p %{default_bookmarks_file} objdir/dist/bin/browser/chrome/en-US/locale/browser/bookmarks.html
71c2a1
71c2a1
# Make sure locale works for langpacks
71c2a1
%{__cat} > objdir/dist/bin/browser/defaults/preferences/firefox-l10n.js << EOF
71c2a1
pref("general.useragent.locale", "chrome://global/locale/intl.properties");
71c2a1
EOF
71c2a1
71c2a1
DESTDIR=%{buildroot} make -C objdir install
71c2a1
71c2a1
%{__mkdir_p} %{buildroot}{%{_libdir},%{_bindir},%{_datadir}/applications}
71c2a1
71c2a1
desktop-file-install --dir %{buildroot}%{_datadir}/applications %{SOURCE20}
71c2a1
71c2a1
# set up the firefox start script
71c2a1
%{__rm} -rf %{buildroot}%{_bindir}/firefox
71c2a1
%{__cat} %{SOURCE21} > %{buildroot}%{_bindir}/firefox
71c2a1
%if 0%{?bundle_gtk3}
71c2a1
sed -i -e 's|%RHEL_ENV_VARS%|export XDG_DATA_DIRS="$MOZ_LIB_DIR/firefox/bundled/share:/usr/share:$XDG_DATA_DIRS"\nexport FONTCONFIG_FILE="$MOZ_LIB_DIR/firefox/bundled/etc/fonts/fonts.conf"|' %{buildroot}%{_bindir}/firefox
71c2a1
%else
71c2a1
sed -i -e 's|%RHEL_ENV_VARS%||' %{buildroot}%{_bindir}/firefox
71c2a1
%endif
71c2a1
71c2a1
%{__chmod} 755 %{buildroot}%{_bindir}/firefox
71c2a1
71c2a1
%{__install} -p -D -m 644 %{SOURCE23} %{buildroot}%{_mandir}/man1/firefox.1
71c2a1
71c2a1
%{__rm} -f %{buildroot}/%{mozappdir}/firefox-config
71c2a1
%{__rm} -f %{buildroot}/%{mozappdir}/update-settings.ini
71c2a1
71c2a1
for s in 16 22 24 32 48 256; do
71c2a1
    %{__mkdir_p} %{buildroot}%{_datadir}/icons/hicolor/${s}x${s}/apps
71c2a1
    %{__cp} -p browser/branding/official/default${s}.png \
71c2a1
               %{buildroot}%{_datadir}/icons/hicolor/${s}x${s}/apps/firefox.png
71c2a1
done
71c2a1
71c2a1
# Install hight contrast icon
71c2a1
%{__mkdir_p} %{buildroot}%{_datadir}/icons/hicolor/symbolic/apps
71c2a1
%{__cp} -p %{SOURCE25} \
71c2a1
           %{buildroot}%{_datadir}/icons/hicolor/symbolic/apps
71c2a1
71c2a1
# Register as an application to be visible in the software center
71c2a1
#
71c2a1
# NOTE: It would be *awesome* if this file was maintained by the upstream
71c2a1
# project, translated and installed into the right place during `make install`.
71c2a1
#
71c2a1
# See http://www.freedesktop.org/software/appstream/docs/ for more details.
71c2a1
#
71c2a1
%{__mkdir_p} %{buildroot}%{_datadir}/appdata
71c2a1
cat > %{buildroot}%{_datadir}/appdata/%{name}.appdata.xml <
71c2a1
71c2a1
71c2a1
71c2a1
BugReportURL: https://bugzilla.mozilla.org/show_bug.cgi?id=1071061
71c2a1
SentUpstream: 2014-09-22
71c2a1
-->
71c2a1
<application>
71c2a1
  <id type="desktop">firefox.desktop</id>
71c2a1
  <metadata_license>CC0-1.0</metadata_license>
71c2a1
  <description>
71c2a1
    

71c2a1
      Bringing together all kinds of awesomeness to make browsing better for you.
71c2a1
      Get to your favorite sites quickly – even if you don’t remember the URLs.
71c2a1
      Type your term into the location bar (aka the Awesome Bar) and the autocomplete
71c2a1
      function will include possible matches from your browsing history, bookmarked
71c2a1
      sites and open tabs.
71c2a1
    

71c2a1
    
71c2a1
  </description>
71c2a1
  <url type="homepage">http://www.mozilla.org/</url>
71c2a1
  <screenshots>
71c2a1
    <screenshot type="default">https://raw.githubusercontent.com/hughsie/fedora-appstream/master/screenshots-extra/firefox/a.png</screenshot>
71c2a1
    <screenshot>https://raw.githubusercontent.com/hughsie/fedora-appstream/master/screenshots-extra/firefox/b.png</screenshot>
71c2a1
    <screenshot>https://raw.githubusercontent.com/hughsie/fedora-appstream/master/screenshots-extra/firefox/c.png</screenshot>
71c2a1
  </screenshots>
71c2a1
  
71c2a1
  <updatecontact>someone_who_cares@upstream_project.org</updatecontact>
71c2a1
   -->
71c2a1
</application>
71c2a1
EOF
71c2a1
71c2a1
echo > %{name}.lang
71c2a1
%if %{build_langpacks}
71c2a1
# Extract langpacks, make any mods needed, repack the langpack, and install it.
71c2a1
%{__mkdir_p} %{buildroot}%{langpackdir}
71c2a1
%{__tar} xf %{SOURCE1}
71c2a1
for langpack in `ls firefox-langpacks/*.xpi`; do
71c2a1
  language=`basename $langpack .xpi`
71c2a1
  extensionID=langpack-$language@firefox.mozilla.org
71c2a1
  %{__mkdir_p} $extensionID
71c2a1
  unzip -qq $langpack -d $extensionID
71c2a1
  find $extensionID -type f | xargs chmod 644
71c2a1
71c2a1
  cd $extensionID
71c2a1
  zip -qq -r9mX ../${extensionID}.xpi *
71c2a1
  cd -
71c2a1
71c2a1
  %{__install} -m 644 ${extensionID}.xpi %{buildroot}%{langpackdir}
71c2a1
  language=`echo $language | sed -e 's/-/_/g'`
71c2a1
  echo "%%lang($language) %{langpackdir}/${extensionID}.xpi" >> %{name}.lang
71c2a1
done
71c2a1
%{__rm} -rf firefox-langpacks
71c2a1
71c2a1
# Install langpack workaround (see #707100, #821169)
71c2a1
function create_default_langpack() {
71c2a1
language_long=$1
71c2a1
language_short=$2
71c2a1
cd %{buildroot}%{langpackdir}
71c2a1
ln -s langpack-$language_long@firefox.mozilla.org.xpi langpack-$language_short@firefox.mozilla.org.xpi
71c2a1
cd -
71c2a1
echo "%%lang($language_short) %{langpackdir}/langpack-$language_short@firefox.mozilla.org.xpi" >> %{name}.lang
71c2a1
}
71c2a1
71c2a1
# Table of fallbacks for each language
71c2a1
# please file a bug at bugzilla.redhat.com if the assignment is incorrect
71c2a1
create_default_langpack "bn-IN" "bn"
71c2a1
create_default_langpack "es-AR" "es"
71c2a1
create_default_langpack "fy-NL" "fy"
71c2a1
create_default_langpack "ga-IE" "ga"
71c2a1
create_default_langpack "gu-IN" "gu"
71c2a1
create_default_langpack "hi-IN" "hi"
71c2a1
create_default_langpack "hy-AM" "hy"
71c2a1
create_default_langpack "nb-NO" "nb"
71c2a1
create_default_langpack "nn-NO" "nn"
71c2a1
create_default_langpack "pa-IN" "pa"
71c2a1
create_default_langpack "pt-PT" "pt"
71c2a1
create_default_langpack "sv-SE" "sv"
71c2a1
create_default_langpack "zh-TW" "zh"
71c2a1
%endif # build_langpacks
71c2a1
71c2a1
# Keep compatibility with the old preference location.
71c2a1
%{__mkdir_p} %{buildroot}%{mozappdir}/defaults/preferences
71c2a1
%{__mkdir_p} %{buildroot}%{mozappdir}/browser/defaults
71c2a1
ln -s %{mozappdir}/defaults/preferences $RPM_BUILD_ROOT/%{mozappdir}/browser/defaults/preferences
71c2a1
# Default preferences
71c2a1
%{__cp} %{SOURCE12} %{buildroot}%{mozappdir}/defaults/preferences/all-redhat.js
71c2a1
71c2a1
# System config dir
71c2a1
%{__mkdir_p} %{buildroot}/%{_sysconfdir}/%{name}/pref
71c2a1
71c2a1
# System extensions
71c2a1
%{__mkdir_p} %{buildroot}%{_datadir}/mozilla/extensions/%{firefox_app_id}
71c2a1
%{__mkdir_p} %{buildroot}%{_libdir}/mozilla/extensions/%{firefox_app_id}
71c2a1
71c2a1
# Copy over the LICENSE
71c2a1
%{__install} -p -c -m 644 LICENSE %{buildroot}/%{mozappdir}
71c2a1
71c2a1
# Use the system hunspell dictionaries
71c2a1
%{__rm} -rf %{buildroot}%{mozappdir}/dictionaries
71c2a1
ln -s %{_datadir}/myspell %{buildroot}%{mozappdir}/dictionaries
71c2a1
71c2a1
# Enable crash reporter for Firefox application
71c2a1
%if %{enable_mozilla_crashreporter}
71c2a1
sed -i -e "s/\[Crash Reporter\]/[Crash Reporter]\nEnabled=1/" %{buildroot}/%{mozappdir}/application.ini
71c2a1
# Add debuginfo for crash-stats.mozilla.com
71c2a1
%{__mkdir_p} %{buildroot}/%{moz_debug_dir}
71c2a1
%{__cp} objdir/dist/%{symbols_file_name} %{buildroot}/%{moz_debug_dir}
71c2a1
%endif
71c2a1
71c2a1
%if %{run_tests}
71c2a1
# Add debuginfo for crash-stats.mozilla.com
71c2a1
%{__mkdir_p} %{buildroot}/test_results
71c2a1
%{__cp} test_results/* %{buildroot}/test_results
71c2a1
%endif
71c2a1
71c2a1
71c2a1
# Copy over run-mozilla.sh
71c2a1
%{__cp} build/unix/run-mozilla.sh %{buildroot}%{mozappdir}
71c2a1
71c2a1
# Add distribution.ini
71c2a1
%{__mkdir_p} %{buildroot}%{mozappdir}/distribution
71c2a1
%{__cp} %{SOURCE26} %{buildroot}%{mozappdir}/distribution
71c2a1
71c2a1
# Remove copied libraries to speed up build
71c2a1
rm -f %{buildroot}%{mozappdirdev}/sdk/lib/libmozjs.so
71c2a1
rm -f %{buildroot}%{mozappdirdev}/sdk/lib/libmozalloc.so
71c2a1
rm -f %{buildroot}%{mozappdirdev}/sdk/lib/libxul.so
71c2a1
71c2a1
%if %{bundle_gnome_extension}
71c2a1
# Gnome extension
71c2a1
%{__mkdir_p} %{buildroot}%{mozappdir}/distribution/extensions
71c2a1
%{__cp} -p %{SOURCE2} %{buildroot}%{mozappdir}/distribution/extensions/chrome-gnome-shell@gnome.org.xpi
71c2a1
chmod 644 %{buildroot}%{mozappdir}/distribution/extensions/chrome-gnome-shell@gnome.org.xpi
71c2a1
%endif
71c2a1
#---------------------------------------------------------------------
71c2a1
71c2a1
71c2a1
71c2a1
%preun
71c2a1
# is it a final removal?
71c2a1
if [ $1 -eq 0 ]; then
71c2a1
  %{__rm} -rf %{mozappdir}/components
71c2a1
  %{__rm} -rf %{mozappdir}/extensions
71c2a1
  %{__rm} -rf %{mozappdir}/plugins
71c2a1
  %{__rm} -rf %{langpackdir}
71c2a1
fi
71c2a1
71c2a1
%clean
71c2a1
rm -rf %{_srcrpmdir}/gtk3-private-%{gtk3_nvr}*.src.rpm
71c2a1
find %{_rpmdir} -name "gtk3-private-*%{gtk3_nvr}*.rpm" -delete
71c2a1
rm -rf %{_srcrpmdir}/libffi*.src.rpm
71c2a1
find %{_rpmdir} -name "libffi*.rpm" -delete
71c2a1
71c2a1
%post
71c2a1
update-desktop-database &> /dev/null || :
71c2a1
touch --no-create %{_datadir}/icons/hicolor &>/dev/null || :
71c2a1
%if 0%{?bundle_gtk3}
71c2a1
# gtk3-private-post.inc
71c2a1
%include_file %{SOURCE201}
71c2a1
%endif
71c2a1
71c2a1
%postun
71c2a1
update-desktop-database &> /dev/null || :
71c2a1
if [ $1 -eq 0 ] ; then
71c2a1
    touch --no-create %{_datadir}/icons/hicolor &>/dev/null
71c2a1
    gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
71c2a1
fi
71c2a1
%if 0%{?bundle_gtk3}
71c2a1
# gtk3-private-postun.inc
71c2a1
%include_file %{SOURCE202}
71c2a1
%endif
71c2a1
71c2a1
%posttrans
71c2a1
gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
71c2a1
%if 0%{?bundle_gtk3}
71c2a1
# gtk3-private-posttrans.inc
71c2a1
%include_file %{SOURCE203}
71c2a1
%endif
71c2a1
71c2a1
%files -f %{name}.lang
71c2a1
%{_bindir}/firefox
71c2a1
%{mozappdir}/firefox
71c2a1
%{mozappdir}/firefox-bin
71c2a1
%doc %{_mandir}/man1/*
71c2a1
%dir %{_sysconfdir}/%{name}
71c2a1
%dir %{_sysconfdir}/%{name}/*
71c2a1
%dir %{_datadir}/mozilla/extensions/*
71c2a1
%dir %{_libdir}/mozilla/extensions/*
71c2a1
%{_datadir}/appdata/*.appdata.xml
71c2a1
%{_datadir}/applications/*.desktop
71c2a1
%dir %{mozappdir}
71c2a1
%doc %{mozappdir}/LICENSE
71c2a1
%{mozappdir}/browser/chrome
71c2a1
%{mozappdir}/browser/chrome.manifest
71c2a1
%{mozappdir}/defaults/preferences/*
71c2a1
%{mozappdir}/browser/defaults/preferences
71c2a1
%{mozappdir}/browser/features/*.xpi
71c2a1
%{mozappdir}/distribution/distribution.ini
71c2a1
# That's Windows only
71c2a1
%ghost %{mozappdir}/browser/features/aushelper@mozilla.org.xpi
71c2a1
%attr(644, root, root) %{mozappdir}/browser/blocklist.xml
71c2a1
%dir %{mozappdir}/browser/extensions
71c2a1
%{mozappdir}/browser/extensions/*
71c2a1
%if %{build_langpacks}
71c2a1
%dir %{langpackdir}
71c2a1
%endif
71c2a1
%{mozappdir}/browser/omni.ja
71c2a1
%{mozappdir}/chrome.manifest
71c2a1
%{mozappdir}/run-mozilla.sh
71c2a1
%{mozappdir}/application.ini
71c2a1
%{mozappdir}/pingsender
71c2a1
%exclude %{mozappdir}/removed-files
71c2a1
%{_datadir}/icons/hicolor/16x16/apps/firefox.png
71c2a1
%{_datadir}/icons/hicolor/22x22/apps/firefox.png
71c2a1
%{_datadir}/icons/hicolor/24x24/apps/firefox.png
71c2a1
%{_datadir}/icons/hicolor/256x256/apps/firefox.png
71c2a1
%{_datadir}/icons/hicolor/32x32/apps/firefox.png
71c2a1
%{_datadir}/icons/hicolor/48x48/apps/firefox.png
71c2a1
%{_datadir}/icons/hicolor/symbolic/apps/firefox-symbolic.svg
71c2a1
%if %{enable_mozilla_crashreporter}
71c2a1
%{mozappdir}/crashreporter
71c2a1
%{mozappdir}/crashreporter.ini
71c2a1
%{mozappdir}/minidump-analyzer
71c2a1
%{mozappdir}/Throbber-small.gif
71c2a1
%{mozappdir}/browser/crashreporter-override.ini
71c2a1
%endif
71c2a1
%{mozappdir}/*.so
71c2a1
%{mozappdir}/gtk2/*.so
71c2a1
%{mozappdir}/defaults/pref/channel-prefs.js
71c2a1
%{mozappdir}/dependentlibs.list
71c2a1
%{mozappdir}/dictionaries
71c2a1
%{mozappdir}/omni.ja
71c2a1
%{mozappdir}/platform.ini
71c2a1
%{mozappdir}/plugin-container
71c2a1
%{mozappdir}/gmp-clearkey
71c2a1
%{mozappdir}/fonts/EmojiOneMozilla.ttf
71c2a1
%if !%{?system_libicu}
71c2a1
#%{mozappdir}/icudt*.dat
71c2a1
%endif
71c2a1
%if !%{?system_nss}
71c2a1
%{mozappdir}/libfreeblpriv3.chk
71c2a1
%{mozappdir}/libnssdbm3.chk
71c2a1
%{mozappdir}/libsoftokn3.chk
71c2a1
%exclude %{mozappdir}/libnssckbi.so
71c2a1
%endif
71c2a1
%if 0%{use_bundled_ffi}
71c2a1
%{mozappdir}/bundled/%{_lib}/libffi.so*
71c2a1
%exclude %{_datadir}/doc/libffi*
71c2a1
%endif
71c2a1
71c2a1
%if 0%{?bundle_gtk3}
71c2a1
# gtk3-private-files.inc
71c2a1
%include_file %{SOURCE204}
71c2a1
%endif
71c2a1
71c2a1
71c2a1
#---------------------------------------------------------------------
71c2a1
71c2a1
%changelog
71c2a1
* Wed May 15 2019 Martin Stransky <stransky@redhat.com> - 60.7.0-1
71c2a1
- Updated to 60.7.0 ESR
71c2a1
71c2a1
* Thu May 9 2019 Martin Stransky <stransky@redhat.com> - 60.6.3-1
71c2a1
- Updated to 60.6.3 ESR
71c2a1
71c2a1
* Tue May 7 2019 Martin Stransky <stransky@redhat.com> - 60.6.2-1
71c2a1
- Updated to 60.6.2 ESR
71c2a1
71c2a1
* Mon Mar 27 2019 Martin Stransky <stransky@redhat.com> - 60.6.1-2
71c2a1
- Added fix for mozbz#526293 - show remote locations on file chooser dialog.
71c2a1
71c2a1
* Mon Mar 25 2019 Martin Stransky <stransky@redhat.com> - 60.6.1-1
71c2a1
- Update to 60.6.1 ESR (Build 1)
71c2a1
71c2a1
* Fri Mar 15 2019 Martin Stransky <stransky@redhat.com> - 60.6.0-3
71c2a1
- Added Google API keys (mozbz#1531176)
71c2a1
71c2a1
* Thu Mar 14 2019 Martin Stransky <stransky@redhat.com> - 60.6.0-2
71c2a1
- Update to 60.6.0 ESR (Build 2)
71c2a1
71c2a1
* Wed Mar 13 2019 Martin Stransky <stransky@redhat.com> - 60.6.0-1
71c2a1
- Update to 60.6.0 ESR (Build 1)
71c2a1
71c2a1
* Wed Feb 13 2019 Jan Horak <jhorak@redhat.com> - 60.5.1-1
71c2a1
- Update to 60.5.1 ESR
71c2a1
71c2a1
* Wed Feb 6 2019 Martin Stransky <stransky@redhat.com> - 60.5.0-3
71c2a1
- Added fix for rhbz#1672424 - Firefox crashes on NFS drives.
71c2a1
71c2a1
* Fri Jan 25 2019 Martin Stransky <stransky@redhat.com> - 60.5.0-2
71c2a1
- Updated to 60.5.0 ESR build2
71c2a1
71c2a1
* Tue Jan 22 2019 Martin Stransky <stransky@redhat.com> - 60.5.0-1
71c2a1
- Updated to 60.5.0 ESR build1
71c2a1
71c2a1
* Thu Jan 10 2019 Jan Horak <jhorak@redhat.com> - 60.4.0-3
71c2a1
- Fixing fontconfig warnings (rhbz#1601475)
71c2a1
71c2a1
* Wed Jan  9 2019 Jan Horak <jhorak@redhat.com> - 60.4.0-2
71c2a1
- Added pipewire patch from Tomas Popela (rhbz#1664270)
71c2a1
71c2a1
* Wed Dec  5 2018 Jan Horak <jhorak@redhat.com> - 60.4.0-1
71c2a1
- Update to 60.4.0 ESR
71c2a1
71c2a1
* Tue Dec  4 2018 Jan Horak <jhorak@redhat.com> - 60.3.0-2
71c2a1
- Added firefox-gnome-shell-extension
71c2a1
71c2a1
* Fri Oct 19 2018 Jan Horak <jhorak@redhat.com> - 60.3.0-1
71c2a1
- Update to 60.3.0 ESR
71c2a1
71c2a1
* Wed Oct 10 2018 Jan Horak <jhorak@redhat.com> - 60.2.2-2
71c2a1
- Added patch for rhbz#1633932
71c2a1
71c2a1
* Tue Oct  2 2018 Jan Horak <jhorak@redhat.com> - 60.2.2-1
71c2a1
- Update to 60.2.2 ESR
71c2a1
71c2a1
* Mon Sep 24 2018 Jan Horak <jhorak@redhat.com> - 60.2.1-1
71c2a1
- Update to 60.2.1 ESR
71c2a1
71c2a1
* Fri Aug 31 2018 Jan Horak <jhorak@redhat.com> - 60.2.0-1
71c2a1
- Update to 60.2.0 ESR
71c2a1
71c2a1
* Tue Aug 28 2018 Jan Horak <jhorak@redhat.com> - 60.1.0-9
71c2a1
- Do not set user agent (rhbz#1608065)
71c2a1
- GTK dialogs are localized now (rhbz#1619373)
71c2a1
- JNLP association works again (rhbz#1607457)
71c2a1
71c2a1
* Thu Aug 16 2018 Jan Horak <jhorak@redhat.com> - 60.1.0-8
71c2a1
- Fixed homepage and bookmarks (rhbz#1606778)
71c2a1
- Fixed missing file associations in RHEL6 (rhbz#1613565)
71c2a1
71c2a1
* Thu Jul 12 2018 Jan Horak <jhorak@redhat.com> - 60.1.0-7
71c2a1
- Run at-spi-bus if not running already (for the bundled gtk3)
71c2a1
71c2a1
* Mon Jul  9 2018 Jan Horak <jhorak@redhat.com> - 60.1.0-6
71c2a1
- Fix for missing schemes for bundled gtk3
71c2a1
71c2a1
* Mon Jun 25 2018 Martin Stransky <stransky@redhat.com> - 60.1.0-5
71c2a1
- Added mesa-libEGL dependency to gtk3/rhel6
71c2a1
71c2a1
* Sun Jun 24 2018 Martin Stransky <stransky@redhat.com> - 60.1.0-4
71c2a1
- Disabled jemalloc on all second arches
71c2a1
71c2a1
* Fri Jun 22 2018 Martin Stransky <stransky@redhat.com> - 60.1.0-3
71c2a1
- Updated to 60.1.0 ESR build2
71c2a1
71c2a1
* Thu Jun 21 2018 Martin Stransky <stransky@redhat.com> - 60.1.0-2
71c2a1
- Disabled jemalloc on second arches
71c2a1
71c2a1
* Wed Jun 20 2018 Martin Stransky <stransky@redhat.com> - 60.1.0-1
71c2a1
- Updated to 60.1.0 ESR
71c2a1
71c2a1
* Wed Jun 13 2018 Jan Horak <jhorak@redhat.com> - 60.0-12
71c2a1
- Fixing bundled libffi issues
71c2a1
- Readded some requirements
71c2a1
71c2a1
* Mon Jun 11 2018 Martin Stransky <stransky@redhat.com> - 60.0-10
71c2a1
- Added fix for mozilla BZ#1436242 - IPC crashes.
71c2a1
71c2a1
* Mon Jun 11 2018 Jan Horak <jhorak@redhat.com> - 60.0-9
71c2a1
- Bundling libffi for the sec-arches
71c2a1
- Added openssl-devel for the Python
71c2a1
- Fixing bundled gtk3
71c2a1
71c2a1
* Fri May 18 2018 Martin Stransky <stransky@redhat.com> - 60.0-8
71c2a1
- Added fix for mozilla BZ#1458492
71c2a1
71c2a1
* Wed May 16 2018 Martin Stransky <stransky@redhat.com> - 60.0-7
71c2a1
- Added patch from rhbz#1498561 to fix ppc64(le) crashes.
71c2a1
71c2a1
* Wed May 16 2018 Martin Stransky <stransky@redhat.com> - 60.0-6
71c2a1
- Disabled jemalloc on second arches
71c2a1
71c2a1
* Sun May  6 2018 Jan Horak <jhorak@redhat.com> - 60.0-4
71c2a1
- Update to 60.0 ESR
71c2a1
71c2a1
* Thu Mar  8 2018 Jan Horak <jhorak@redhat.com> - 52.7.0-1
71c2a1
- Update to 52.7.0 ESR
71c2a1
71c2a1
* Mon Jan 29 2018 Martin Stransky <stransky@redhat.com> - 52.6.0-2
71c2a1
- Build Firefox for desktop arches only (x86_64 and ppc64le)
71c2a1
71c2a1
* Thu Jan 18 2018 Martin Stransky <stransky@redhat.com> - 52.6.0-1
71c2a1
- Update to 52.6.0 ESR
71c2a1
71c2a1
* Thu Nov  9 2017 Jan Horak <jhorak@redhat.com> - 52.5.0-1
71c2a1
- Update to 52.5.0 ESR
71c2a1
71c2a1
* Mon Sep 25 2017 Jan Horak <jhorak@redhat.com> - 52.4.0-1
71c2a1
- Update to 52.4.0 ESR
71c2a1
71c2a1
* Thu Aug  3 2017 Jan Horak <jhorak@redhat.com> - 52.3.0-3
71c2a1
- Update to 52.3.0 ESR (b2)
71c2a1
- Require correct nss version
71c2a1
71c2a1
* Tue Jun 13 2017 Jan Horak <jhorak@redhat.com> - 52.2.0-1
71c2a1
- Update to 52.2.0 ESR
71c2a1
71c2a1
* Wed May 24 2017 Jan Horak <jhorak@redhat.com> - 52.1.2-1
71c2a1
- Update to 52.1.2 ESR
71c2a1
71c2a1
* Wed May 24 2017 Jan Horak <jhorak@redhat.com> - 52.0-7
71c2a1
- Added fix for accept language (rhbz#1454322)
71c2a1
71c2a1
* Wed Mar 22 2017 Jan Horak <jhorak@redhat.com> - 52.0-6
71c2a1
- Removing patch required for older NSS from RHEL 7.3
71c2a1
- Added patch for rhbz#1414564
71c2a1
71c2a1
* Fri Mar 17 2017 Martin Stransky <stransky@redhat.com> - 52.0-5
71c2a1
- Added fix for mozbz#1348168/CVE-2017-5428
71c2a1
71c2a1
* Mon Mar  6 2017 Jan Horak <jhorak@redhat.com> - 52.0-4
71c2a1
- Update to 52.0 ESR (b4)
71c2a1
71c2a1
* Thu Mar 2 2017 Martin Stransky <stransky@redhat.com> - 52.0-3
71c2a1
- Added fix for rhbz#1423012 - ppc64 gfx crashes
71c2a1
71c2a1
* Wed Mar  1 2017 Jan Horak <jhorak@redhat.com> - 52.0-2
71c2a1
- Enable system nss
71c2a1
71c2a1
* Tue Feb 28 2017 Martin Stransky <stransky@redhat.com> - 52.0-1
71c2a1
- Update to 52.0ESR (B1)
71c2a1
- Build RHEL7 package for Gtk3
71c2a1
71c2a1
* Mon Feb 27 2017 Martin Stransky <stransky@redhat.com> - 52.0-0.13
71c2a1
- Added fix for rhbz#1414535
71c2a1
71c2a1
* Tue Feb 21 2017 Jan Horak <jhorak@redhat.com> - 52.0-0.12
71c2a1
- Update to 52.0b8
71c2a1
71c2a1
* Tue Feb  7 2017 Jan Horak <jhorak@redhat.com> - 52.0-0.11
71c2a1
- Readded addons patch
71c2a1
71c2a1
* Mon Feb  6 2017 Jan Horak <jhorak@redhat.com> - 52.0-0.10
71c2a1
- Update to 52.0b3
71c2a1
71c2a1
* Tue Jan 31 2017 Jan Horak <jhorak@redhat.com> - 52.0-0.9
71c2a1
- Update to 52.0b2
71c2a1
71c2a1
* Fri Jan 27 2017 Jan Horak <jhorak@redhat.com> - 52.0-0.8
71c2a1
- Update to 52.0b1
71c2a1
71c2a1
* Thu Dec  8 2016 Jan Horak <jhorak@redhat.com> - 52.0-0.5
71c2a1
- Firefox Aurora 52 testing build