kalev / rpms / firefox

Forked from rpms/firefox 5 years ago
Clone
83e8010
# Set to true if it's going to be submitted as update.
5055837
%global release_build     1
83e8010
00f4c03
# Disabled arm due to rhbz#1658940
830c907
ExcludeArch: armv7hl
4c135f9
# Disabled due to https://pagure.io/fedora-infrastructure/issue/7581
a99b4bf
ExcludeArch: s390x
00f4c03
85cd9b6
%global system_nss        1
5ae399b
%global system_ffi        1
c685c9d
# libvpx is too new for Firefox 65
c685c9d
%if 0%{?fedora} < 30
5ae399b
%global system_libvpx     1
c685c9d
%else
c685c9d
%global system_libvpx     0
c685c9d
%endif
5ae399b
%global hardened_build    1
5ae399b
%global system_jpeg       1
d144fd6
%global run_tests         0
96ac021
%global disable_elfhack   1
30f48bf
%global build_with_clang  0
d144fd6
%global use_bundled_cbindgen  1
94f9ee9
%ifnarch %{ix86} ppc64 s390x
83e8010
%if %{release_build}
830c907
%global build_with_pgo    1
83e8010
%else
83e8010
%global build_with_pgo    0
ddb6e50
%endif
d35dd9e
%endif
7c6cd89
%if 0%{?fedora} > 30
d37312c
%global wayland_backend_default 1
d37312c
%endif
c20bee6
%if 0%{?flatpak}
c20bee6
%global wayland_backend_default 1
38e1aa5
%global build_with_pgo    0
c20bee6
%endif
beb0cf3
# Big endian platforms
40bd675
%ifarch ppc64 s390x
59fb3e7
%global big_endian        1
beb0cf3
%endif
731d588
%bcond_without debug_build
731d588
%if %{with debug_build}
731d588
%else
731d588
%global debug_build       1
731d588
%else
70909c2
%global debug_build       0
731d588
%endif
Martin Stransky ab8ce9b
d144fd6
%if 0%{?build_with_pgo}
d144fd6
%global use_xvfb          1
d144fd6
%global build_tests       1
d144fd6
%endif
d144fd6
d144fd6
%if !0%{?run_tests}
d144fd6
%global use_xvfb          1
d144fd6
%global build_tests       1
d144fd6
%endif
13bd23e
59fb3e7
%global default_bookmarks_file  %{_datadir}/bookmarks/default-bookmarks.html
59fb3e7
%global firefox_app_id  \{ec8030f7-c20a-464f-9b0e-13a3a9e97384\}
875d0c0
# Minimal required versions
Martin Stransky 48d8fda
%global cairo_version 1.13.1
875d0c0
%global freetype_version 2.1.9
875d0c0
%global libnotify_version 0.7.0
de1fb9d
%if %{?system_libvpx}
de1fb9d
%global libvpx_version 1.4.0
de1fb9d
%endif
875d0c0
875d0c0
%if %{?system_nss}
9c46b2a
%global nspr_version 4.19
49bb7a9
%global nspr_build_version %{nspr_version}
85cd9b6
%global nss_version 3.40.1
49bb7a9
%global nss_build_version %{nss_version}
875d0c0
%endif
08ceb32
d2cc793
%global mozappdir     %{_libdir}/%{name}
0a58c3e
%global mozappdirdev  %{_libdir}/%{name}-devel-%{version}
Christopher Aillon 8cc5a04
%global langpackdir   %{mozappdir}/langpacks
9c46b2a
%global tarballdir    firefox-%{version}
e1fa01e
59fb3e7
%global official_branding       1
731d588
731d588
%bcond_without langpacks
Martin Stransky fa428ed
29d1083
%global enable_mozilla_crashreporter       0
Martin Stransky fa428ed
%if !%{debug_build}
4225333
%ifarch %{ix86} x86_64
d35dd9e
# Disable crashreporter sa we want to collect Wayland crashes.
d35dd9e
%if 0%{?fedora} < 28
29d1083
%global enable_mozilla_crashreporter       1
Christopher Aillon 59e26d3
%endif
250246d
%endif
4081c01
%endif
Martin Stransky bb61945
83e8010
%if !%{release_build}
83e8010
%global pre_tag .test
83e8010
%endif
83e8010
3f0fba2
Summary:        Mozilla Firefox Web browser
cvsdist cac9c1c
Name:           firefox
f232c3c
Version:        66.0.3
dc7ec55
Release:        2%{?pre_tag}%{?dist}
Martin Stransky dc35dec
URL:            https://www.mozilla.org/firefox/
31f0244
License:        MPLv1.1 or GPLv2+ or LGPLv2+
731d588
Source0:        https://archive.mozilla.org/pub/firefox/releases/%{version}%{?pre_version}/source/firefox-%{version}%{?pre_version}.source.tar.xz
731d588
%if %{with langpacks}
f232c3c
Source1:        firefox-langpacks-%{version}%{?pre_version}-20190410.tar.xz
5fe54d7
%endif
5ae399b
Source2:        cbindgen-vendor.tar.xz
fa0cf49
Source10:       firefox-mozconfig
97f1826
Source12:       firefox-redhat-default-prefs.js
2ca6e87
Source20:       firefox.desktop
2ca6e87
Source21:       firefox.sh.in
1fb0c4e
Source23:       firefox.1
df0172c
Source24:       mozilla-api-key
06c81c9
Source25:       firefox-symbolic.svg
e1c3854
Source26:       distribution.ini
b41c541
Source27:       google-api-key
c45606f
Source28:       firefox-wayland.sh.in
dd0eb4d
Source29:       firefox-wayland.desktop
d37312c
Source30:       firefox-x11.sh.in
d37312c
Source31:       firefox-x11.desktop
3f0fba2
87559eb
# Build patches
875d0c0
Patch3:         mozilla-build-arm.patch
Martin Stransky 013dc85
Patch25:        rhbz-1219542-s390-build.patch
beb0cf3
Patch26:        build-icu-big-endian.patch
422c357
Patch32:        build-rust-ppc64le.patch
f55c02e
Patch35:        build-ppc-jit.patch
49bb7a9
# Always feel lucky for unsupported platforms:
49bb7a9
# https://bugzilla.mozilla.org/show_bug.cgi?id=1347128
49bb7a9
Patch37:        build-jit-atomic-always-lucky.patch
bee2fa8
# Fixing missing cacheFlush when JS_CODEGEN_NONE is used (s390x)
bee2fa8
Patch38:        build-cacheFlush-missing.patch
16c3289
Patch40:        build-aarch64-skia.patch
13bd23e
Patch41:        build-disable-elfhack.patch
8fedaac
Patch42:        mozilla-1515641-av1-build-1.patch
8fedaac
Patch43:        mozilla-1515641-av1-build-2.patch
bc42e3d
Patch44:        build-arm-libopus.patch
ec310c7
Patch45:        mozilla-1533969.patch
875d0c0
875d0c0
# Fedora specific patches
2fb05a0
Patch215:        firefox-enable-addons.patch
Martin Stransky 537c1d3
Patch219:        rhbz-1173156.patch
1c8e85a
Patch221:        firefox-fedora-ua.patch
Martin Stransky 4bed479
Patch224:        mozilla-1170092.patch
402aa35
#ARM run-time patch
402aa35
Patch226:        rhbz-1354671.patch
66f0419
Patch227:        firefox-locale-debug.patch
4c3c3e6
5fe54d7
# Upstream patches
6a499c9
Patch402:        mozilla-1196777.patch
6aafac4
Patch412:        mozilla-1337988.patch
bc096e5
Patch413:        mozilla-1353817.patch
3d70da7
Patch415:        Bug-1238661---fix-mozillaSignalTrampoline-to-work-.patch
3430410
Patch417:        bug1375074-save-restore-x28.patch
a2eb082
Patch418:        mozilla-1526243.patch
a2eb082
Patch419:        mozilla-1540145.patch
86b963d
dd0eb4d
# Wayland specific upstream patches
d37312c
Patch574:        firefox-pipewire.patch
83e8010
Patch575:        mozilla-1423598-popup.patch
83e8010
Patch576:        mozilla-1532643-popup.patch
2253cae
Patch577:        mozilla-1535567.patch
2253cae
Patch578:        mozilla-1431399.patch
a99b4bf
Patch579:        mozilla-1468911.patch
384fee2
Patch580:        mozilla-1539471.patch
f232c3c
Patch581:        mozilla-1517205.patch
f232c3c
Patch582:        mozilla-1508378.patch
dd0eb4d
8fe69a3
# PGO/LTO patches
8fe69a3
Patch600:        pgo.patch
8fe69a3
Patch601:        mozilla-1516081.patch
8fe69a3
Patch602:        mozilla-1516803.patch
6cd2d43
875d0c0
%if %{?system_nss}
4012bb8
BuildRequires:  pkgconfig(nspr) >= %{nspr_version}
4012bb8
BuildRequires:  pkgconfig(nss) >= %{nss_version}
875d0c0
BuildRequires:  nss-static >= %{nss_version}
875d0c0
%endif
4012bb8
BuildRequires:  pkgconfig(libpng)
Martin Stransky 916aeae
%if %{?system_jpeg}
875d0c0
BuildRequires:  libjpeg-devel
Martin Stransky 916aeae
%endif
875d0c0
BuildRequires:  zip
875d0c0
BuildRequires:  bzip2-devel
4012bb8
BuildRequires:  pkgconfig(zlib)
4012bb8
BuildRequires:  pkgconfig(libIDL-2.0)
4012bb8
BuildRequires:  pkgconfig(gtk+-3.0)
4012bb8
BuildRequires:  pkgconfig(gtk+-2.0)
4012bb8
BuildRequires:  pkgconfig(krb5)
4012bb8
BuildRequires:  pkgconfig(pango)
4012bb8
BuildRequires:  pkgconfig(freetype2) >= %{freetype_version}
4012bb8
BuildRequires:  pkgconfig(xt)
4012bb8
BuildRequires:  pkgconfig(xrender)
4012bb8
BuildRequires:  pkgconfig(libstartup-notification-1.0)
4012bb8
BuildRequires:  pkgconfig(libnotify) >= %{libnotify_version}
4012bb8
BuildRequires:  pkgconfig(dri)
4012bb8
BuildRequires:  pkgconfig(libcurl)
f036746
BuildRequires:  dbus-glib-devel
de1fb9d
%if %{?system_libvpx}
83f478f
BuildRequires:  libvpx-devel >= %{libvpx_version}
de1fb9d
%endif
875d0c0
BuildRequires:  autoconf213
4012bb8
BuildRequires:  pkgconfig(libpulse)
4012bb8
BuildRequires:  pkgconfig(gconf-2.0)
e0dccae
BuildRequires:  yasm
c9d7ca7
BuildRequires:  llvm
ee6f0ae
BuildRequires:  llvm-devel
e958342
BuildRequires:  clang
ce10bbd
BuildRequires:  clang-libs
7da8add
%if 0%{?build_with_clang}
0df3489
BuildRequires:  lld
0df3489
%endif
c858294
%if 0%{?fedora} > 28
d37312c
BuildRequires:  pipewire-devel
d37312c
%endif
5ae399b
%if !0%{?use_bundled_cbindgen}
436ab86
BuildRequires:  cbindgen
5ae399b
%endif
f0e2615
BuildRequires:  nodejs
995e388
BuildRequires:  nasm >= 1.13
875d0c0
875d0c0
Requires:       mozilla-filesystem
49bb7a9
Requires:       p11-kit-trust
875d0c0
%if %{?system_nss}
875d0c0
Requires:       nspr >= %{nspr_build_version}
875d0c0
Requires:       nss >= %{nss_build_version}
875d0c0
%endif
14d5b83
BuildRequires:  python2-devel
10d0e02
%if !0%{?flatpak}
b30b5a2
Requires:       u2f-hidraw-policy
016e602
%endif
cfafdae
Kai Engert 23da238
%if 0%{?fedora} > 25
Kai Engert 23da238
# For early testing of rhbz#1400293 mozbz#1324096 on F26 and Rawhide,
Kai Engert 23da238
# temporarily require the specific NSS build with the backports.
Kai Engert 23da238
# Can be removed after firefox is changed to require NSS 3.30.
Kai Engert 23da238
BuildRequires:  nss-devel >= 3.29.1-2.1
Kai Engert 23da238
Requires:       nss >= 3.29.1-2.1
Kai Engert 23da238
%endif
Kai Engert 23da238
84aecf8
%if 0%{?fedora} < 26
84aecf8
# Using Conflicts for p11-kit, not Requires, because on multi-arch
84aecf8
# systems p11-kit isn't yet available for secondary arches like
84aecf8
# p11-kit.i686 (fallback to libnssckbi.so from NSS).
84aecf8
# This build contains backports from p11-kit 0.23.4
84aecf8
Conflicts: p11-kit < 0.23.2-3
84aecf8
# Requires build with CKA_NSS_MOZILLA_CA_POLICY attribute
84aecf8
Requires: ca-certificates >= 2017.2.11-1.1
84aecf8
# Requires NSS build with backports from NSS 3.30
84aecf8
BuildRequires:  nss-devel >= 3.29.3-1.1
84aecf8
Requires:       nss >= 3.29.3-1.1
84aecf8
%endif
84aecf8
cvsdist cac9c1c
BuildRequires:  desktop-file-utils
10d0e02
%if !0%{?flatpak}
91b8714
BuildRequires:  system-bookmarks
332c921
%endif
875d0c0
%if %{?system_ffi}
4012bb8
BuildRequires:  pkgconfig(libffi)
875d0c0
%endif
2c1570e
d144fd6
%if 0%{?use_xvfb}
c3e1bae
BuildRequires:  xorg-x11-server-Xvfb
c3e1bae
%endif
ad0822a
BuildRequires:  rust
8165b81
BuildRequires:  cargo
5749081
BuildRequires:  clang-devel
c3e1bae
565a364
Obsoletes:      mozilla <= 37:1.7.13
cvsdist cac9c1c
Provides:       webclient
cvsdist cac9c1c
cvsdist cac9c1c
%description
cvsdist cac9c1c
Mozilla Firefox is an open-source web browser, designed for standards
cvsdist cac9c1c
compliance, performance and portability.
c3e1bae
875d0c0
%if %{enable_mozilla_crashreporter}
875d0c0
%global moz_debug_prefix %{_prefix}/lib/debug
875d0c0
%global moz_debug_dir %{moz_debug_prefix}%{mozappdir}
875d0c0
%global uname_m %(uname -m)
875d0c0
%global symbols_file_name %{name}-%{version}.en-US.%{_os}-%{uname_m}.crashreporter-symbols.zip
875d0c0
%global symbols_file_path %{moz_debug_dir}/%{symbols_file_name}
875d0c0
%global _find_debuginfo_opts -p %{symbols_file_path} -o debugcrashreporter.list
875d0c0
%global crashreporter_pkg_name mozilla-crashreporter-%{name}-debuginfo
875d0c0
%package -n %{crashreporter_pkg_name}
875d0c0
Summary: Debugging symbols used by Mozilla's crash reporter servers
875d0c0
%description -n %{crashreporter_pkg_name}
c3e1bae
This package provides debug information for Firefox, for use by
875d0c0
Mozilla's crash reporter servers.  If you are trying to locally
875d0c0
debug %{name}, you want to install %{name}-debuginfo instead.
875d0c0
%files -n %{crashreporter_pkg_name} -f debugcrashreporter.list
875d0c0
%endif
cvsdist cac9c1c
6cd2d43
%if 0%{?wayland_backend_default}
d37312c
%package x11
d37312c
Summary: Firefox X11 launcher.
d37312c
Requires: %{name}
d37312c
%description x11
d37312c
The firefox-x11 package contains launcher and desktop file
d37312c
to run Firefox natively on X11.
d37312c
%files x11
d37312c
%{_bindir}/firefox-x11
d37312c
%{_datadir}/applications/firefox-x11.desktop
d37312c
%else
e8f1982
%package wayland
e8f1982
Summary: Firefox Wayland launcher.
e8f1982
Requires: %{name}
e8f1982
%description wayland
e8f1982
The firefox-wayland package contains launcher and desktop file
e8f1982
to run Firefox natively on Wayland.
0071462
%files wayland
e8f1982
%{_bindir}/firefox-wayland
e8f1982
%{_datadir}/applications/firefox-wayland.desktop
e8f1982
%endif
e8f1982
d37312c
c3e1bae
%if %{run_tests}
c3e1bae
%global testsuite_pkg_name mozilla-%{name}-testresults
c3e1bae
%package -n %{testsuite_pkg_name}
c3e1bae
Summary: Results of testsuite
c3e1bae
%description -n %{testsuite_pkg_name}
c3e1bae
This package contains results of tests executed during build.
c3e1bae
%files -n %{testsuite_pkg_name}
c3e1bae
/test_results
c3e1bae
%endif
c3e1bae
cvsdist cac9c1c
#---------------------------------------------------------------------
cvsdist cac9c1c
cvsdist cac9c1c
%prep
9255105
%setup -q -n %{tarballdir}
fa0cf49
51460be
# Build patches, can't change backup suffix from default because during build
6ffc9e1
# there is a compare of config and js/config directories and .orig suffix is
51460be
# ignored during this compare.
77ec8e7
6aafac4
Martin Stransky ebc5262
%ifarch s390
Martin Stransky 013dc85
%patch25 -p1 -b .rhbz-1219542-s390
Martin Stransky ebc5262
%endif
83e8010
#%patch37 -p1 -b .jit-atomic-lucky
eec2ffa
# TODO Fix later
eec2ffa
#%patch40 -p1 -b .aarch64-skia
13bd23e
%if 0%{?disable_elfhack}
13bd23e
%patch41 -p1 -b .disable-elfhack
13bd23e
%endif
dba86ea
%patch3  -p1 -b .arm
8fedaac
%patch42 -p1 -b .mozilla-1515641
8fedaac
%patch43 -p1 -b .mozilla-1515641
bc42e3d
%patch44 -p1 -b .build-arm-libopus
ec310c7
%patch45 -p1 -b .mozilla-1533969
Martin Stransky 5da2a1e
4c3c3e6
# Fedora patches
e96738d
%patch215 -p1 -b .addons
eec2ffa
%patch219 -p1 -b .rhbz-1173156
eec2ffa
%patch221 -p1 -b .fedora-ua
b33c1cc
%patch224 -p1 -b .1170092
402aa35
#ARM run-time patch
b4944e8
%ifarch aarch64
402aa35
%patch226 -p1 -b .1354671
b4944e8
%endif
66f0419
%patch227 -p1 -b .locale-debug
402aa35
6a499c9
%patch402 -p1 -b .1196777
bc096e5
%patch413 -p1 -b .1353817
3d70da7
%ifarch %{arm}
d37312c
%patch415 -p1 -b .1238661
3d70da7
%endif
beb0cf3
# Patch for big endian platforms only
beb0cf3
%if 0%{?big_endian}
beb0cf3
%patch26 -p1 -b .icu
beb0cf3
%endif
a2eb082
%patch418 -p1 -b .mozilla-1526243
a2eb082
%patch419 -p1 -b .mozilla-1540145
beb0cf3
dd0eb4d
# Wayland specific upstream patches
c858294
%if 0%{?fedora} > 28
69d7077
%patch574 -p1 -b .firefox-pipewire
dd0eb4d
%endif
83e8010
%patch575 -p1 -b .mozilla-1423598-popup
83e8010
%patch576 -p1 -b .mozilla-1532643-popup
2253cae
%patch577 -p1 -b .mozilla-1535567
2253cae
%patch578 -p1 -b .mozilla-1431399
a99b4bf
%patch579 -p1 -b .mozilla-1468911
384fee2
%patch580 -p1 -b .mozilla-1539471
f232c3c
%patch581 -p1 -b .mozilla-1517205
f232c3c
%patch582 -p1 -b .mozilla-1508378
dd0eb4d
8fe69a3
# PGO patches
8fe69a3
%patch600 -p1 -b .pgo
8fe69a3
%patch601 -p1 -b .1516081
8fe69a3
%patch602 -p1 -b .1516803
6cd2d43
cvsdist cac9c1c
%{__rm} -f .mozconfig
2ca6e87
%{__cp} %{SOURCE10} .mozconfig
37e796d
echo "ac_add_options --enable-default-toolkit=cairo-gtk3-wayland" >> .mozconfig
fa0cf49
%if %{official_branding}
Martin Stransky fa428ed
echo "ac_add_options --enable-official-branding" >> .mozconfig
fa0cf49
%endif
df0172c
%{__cp} %{SOURCE24} mozilla-api-key
b41c541
%{__cp} %{SOURCE27} google-api-key
df0172c
875d0c0
%if %{?system_nss}
875d0c0
echo "ac_add_options --with-system-nspr" >> .mozconfig
875d0c0
echo "ac_add_options --with-system-nss" >> .mozconfig
875d0c0
%else
875d0c0
echo "ac_add_options --without-system-nspr" >> .mozconfig
875d0c0
echo "ac_add_options --without-system-nss" >> .mozconfig
875d0c0
%endif
0da741f
875d0c0
%if %{?system_ffi}
875d0c0
echo "ac_add_options --enable-system-ffi" >> .mozconfig
875d0c0
%endif
cvsdist cac9c1c
5c40b1e
%ifarch %{arm}
5c40b1e
echo "ac_add_options --disable-elf-hack" >> .mozconfig
5c40b1e
%endif
5c40b1e
Martin Stransky ab8ce9b
%if %{?debug_build}
Martin Stransky ab8ce9b
echo "ac_add_options --enable-debug" >> .mozconfig
Martin Stransky ab8ce9b
echo "ac_add_options --disable-optimize" >> .mozconfig
Martin Stransky ab8ce9b
%else
59fb3e7
%global optimize_flags "none"
2967f73
%ifarch armv7hl
671bf3c
# ARMv7 needs that (rhbz#1426850)
59fb3e7
%global optimize_flags "-g -O2 -fno-schedule-insns"
671bf3c
# Disable libaom due to rhbz#1641623
671bf3c
echo "ac_add_options --disable-av1" >> .mozconfig
Martin Stransky 62a95da
%endif
2967f73
%ifarch ppc64le aarch64
59fb3e7
%global optimize_flags "-g -O2"
2967f73
%endif
8f71944
%if %{optimize_flags} != "none"
2967f73
echo 'ac_add_options --enable-optimize=%{?optimize_flags}' >> .mozconfig
2967f73
%else
2967f73
echo 'ac_add_options --enable-optimize' >> .mozconfig
2967f73
%endif
2967f73
echo "ac_add_options --disable-debug" >> .mozconfig
0eb6042
%endif
Martin Stransky ab8ce9b
face401
# Second arches fail to start with jemalloc enabled
face401
%ifnarch %{ix86} x86_64
Martin Stransky ceafcaf
echo "ac_add_options --disable-jemalloc" >> .mozconfig
Martin Stransky ceafcaf
%endif
Martin Stransky ceafcaf
Martin Stransky 439f52a
%ifnarch %{ix86} x86_64
875d0c0
echo "ac_add_options --disable-webrtc" >> .mozconfig
875d0c0
%endif
875d0c0
58dcc79
%if !%{enable_mozilla_crashreporter}
58dcc79
echo "ac_add_options --disable-crashreporter" >> .mozconfig
58dcc79
%endif
58dcc79
d144fd6
%if 0%{?build_tests}
c3e1bae
echo "ac_add_options --enable-tests" >> .mozconfig
c3e1bae
%endif
c3e1bae
e0dccae
%if !%{?system_jpeg}
793ab22
echo "ac_add_options --without-system-jpeg" >> .mozconfig
793ab22
%else
793ab22
echo "ac_add_options --with-system-jpeg" >> .mozconfig
793ab22
%endif
793ab22
de1fb9d
%if %{?system_libvpx}
de1fb9d
echo "ac_add_options --with-system-libvpx" >> .mozconfig
de1fb9d
%else
de1fb9d
echo "ac_add_options --without-system-libvpx" >> .mozconfig
de1fb9d
%endif
de1fb9d
d372022
%ifarch s390 s390x
d372022
echo "ac_add_options --disable-ion" >> .mozconfig
d372022
%endif
d372022
3a5d008
# Remove executable bit to make brp-mangle-shebangs happy.
3a5d008
chmod -x third_party/rust/itertools/src/lib.rs
3a5d008
0cf482f
#---------------------------------------------------------------------
0cf482f
0cf482f
%build
5ae399b
%if 0%{?use_bundled_cbindgen}
5ae399b
f2d7e6f
mkdir -p my_rust_vendor
f2d7e6f
cd my_rust_vendor
5ae399b
%{__tar} xf %{SOURCE2}
5ae399b
cd -
5ae399b
mkdir -p .cargo
5ae399b
cat > .cargo/config <
5ae399b
[source.crates-io]
5ae399b
replace-with = "vendored-sources"
5ae399b
5ae399b
[source.vendored-sources]
f2d7e6f
directory = "`pwd`/my_rust_vendor"
5ae399b
EOL
5ae399b
5ae399b
env CARGO_HOME=.cargo cargo install cbindgen
5ae399b
export PATH=`pwd`/.cargo/bin:$PATH
5ae399b
%endif
5ae399b
beb0cf3
echo "Generate big endian version of config/external/icu/data/icud58l.dat"
beb0cf3
%if 0%{?big_endian}
beb0cf3
  ./mach python intl/icu_sources_data.py .
beb0cf3
  ls -l config/external/icu/data
beb0cf3
  rm -f config/external/icu/data/icudt*l.dat
beb0cf3
%endif
beb0cf3
ebf3d95
# Update the various config.guess to upstream release for aarch64 support
ebf3d95
find ./ -name config.guess -exec cp /usr/lib/rpm/config.guess {} ';'
ebf3d95
151cfe2
MOZ_OPT_FLAGS=$(echo "%{optflags}" | %{__sed} -e 's/-Wall//')
Martin Stransky d6ac14f
#rhbz#1037063
Martin Stransky 2b16776
# -Werror=format-security causes build failures when -Wno-format is explicitly given
Martin Stransky 2b16776
# for some sources
ded1820
# Explicitly force the hardening flags for Firefox so it passes the checksec test;
ded1820
# See also https://fedoraproject.org/wiki/Changes/Harden_All_Packages
92092b1
%if 0%{?fedora} < 30
Martin Stransky 5ed9337
MOZ_OPT_FLAGS="$MOZ_OPT_FLAGS -Wformat-security -Wformat -Werror=format-security"
92092b1
%else
92092b1
# Workaround for mozbz#1531309
92092b1
MOZ_OPT_FLAGS=$(echo "$MOZ_OPT_FLAGS" | %{__sed} -e 's/-Werror=format-security//')
92092b1
%endif
cb31356
%if 0%{?fedora} > 30
cb31356
MOZ_OPT_FLAGS="$MOZ_OPT_FLAGS -fpermissive"
cb31356
%endif
d9a1f10
%if %{?hardened_build}
ce65d65
MOZ_OPT_FLAGS="$MOZ_OPT_FLAGS -fPIC -Wl,-z,relro -Wl,-z,now"
Martin Stransky 5ed9337
%endif
Martin Stransky ab8ce9b
%if %{?debug_build}
Martin Stransky ab8ce9b
MOZ_OPT_FLAGS=$(echo "$MOZ_OPT_FLAGS" | %{__sed} -e 's/-O2//')
Martin Stransky ab8ce9b
%endif
3336f2b
%ifarch s390
Martin Stransky ceafcaf
MOZ_OPT_FLAGS=$(echo "$MOZ_OPT_FLAGS" | %{__sed} -e 's/-g/-g1/')
62bcf95
# If MOZ_DEBUG_FLAGS is empty, firefox's build will default it to "-g" which
8f65c00
# overrides the -g1 from line above and breaks building on s390/arm
62bcf95
# (OOM when linking, rhbz#1238225)
62bcf95
export MOZ_DEBUG_FLAGS=" "
Martin Stransky ceafcaf
%endif
d4b2238
%ifarch %{arm} %{ix86}
3336f2b
MOZ_OPT_FLAGS=$(echo "$MOZ_OPT_FLAGS" | %{__sed} -e 's/-g/-g0/')
3336f2b
export MOZ_DEBUG_FLAGS=" "
3336f2b
%endif
2b7d681
%if !0%{?build_with_clang}
295a18a
%ifarch s390 ppc aarch64 %{ix86}
Martin Stransky ceafcaf
MOZ_LINK_FLAGS="-Wl,--no-keep-memory -Wl,--reduce-memory-overheads"
Martin Stransky ceafcaf
%endif
295a18a
%ifarch %{arm}
fb09d0b
MOZ_LINK_FLAGS="-Wl,--no-keep-memory"
fb09d0b
echo "ac_add_options --enable-linker=gold" >> .mozconfig
fb09d0b
%endif
2b7d681
%endif
ff83901
%ifarch %{arm} %{ix86}
0446d3b
export RUSTFLAGS="-Cdebuginfo=0"
e937845
%endif
1edc49d
export CFLAGS=$MOZ_OPT_FLAGS
1edc49d
export CXXFLAGS=$MOZ_OPT_FLAGS
875d0c0
export LDFLAGS=$MOZ_LINK_FLAGS
bfb255e
84ea30d
export PREFIX='%{_prefix}'
1f91419
export LIBDIR='%{_libdir}'
2b6df96
baa9207
%if 0%{?build_with_clang}
0df3489
export LLVM_PROFDATA="llvm-profdata"
a6458b9
export AR="llvm-ar"
a6458b9
export NM="llvm-nm"
0df3489
export RANLIB="llvm-ranlib"
2ad016d
echo "ac_add_options --enable-linker=lld" >> .mozconfig
2ad016d
%else
2ad016d
export CC=gcc
2ad016d
export CXX=g++
ddb6e50
export AR="gcc-ar"
ddb6e50
export NM="gcc-nm"
ddb6e50
export RANLIB="gcc-ranlib"
2ad016d
%endif
4ed6b0c
%if 0%{?build_with_pgo}
2ad016d
echo "ac_add_options MOZ_PGO=1" >> .mozconfig
ddb6e50
echo "ac_add_options --enable-lto" >> .mozconfig
513a689
%endif
513a689
e3ec569
MOZ_SMP_FLAGS=-j1
4ed6b0c
# On x86_64 architectures, Mozilla can build up to 4 jobs at once in parallel,
Christopher Aillon 3c6d6f9
# however builds tend to fail on other arches when building in parallel.
bd27a67
%ifarch %{ix86}
4ed6b0c
[ -z "$RPM_BUILD_NCPUS" ] && \
4ed6b0c
     RPM_BUILD_NCPUS="`/usr/bin/getconf _NPROCESSORS_ONLN`"
4ed6b0c
[ "$RPM_BUILD_NCPUS" -ge 2 ] && MOZ_SMP_FLAGS=-j2
4ed6b0c
%endif
4ed6b0c
%ifarch x86_64 ppc ppc64 ppc64le aarch64
e3ec569
[ -z "$RPM_BUILD_NCPUS" ] && \
e3ec569
     RPM_BUILD_NCPUS="`/usr/bin/getconf _NPROCESSORS_ONLN`"
Christopher Aillon 3c6d6f9
[ "$RPM_BUILD_NCPUS" -ge 2 ] && MOZ_SMP_FLAGS=-j2
Christopher Aillon 3c6d6f9
[ "$RPM_BUILD_NCPUS" -ge 4 ] && MOZ_SMP_FLAGS=-j4
875d0c0
[ "$RPM_BUILD_NCPUS" -ge 8 ] && MOZ_SMP_FLAGS=-j8
2b6df96
%endif
2b6df96
5d35b83
export MOZ_MAKE_FLAGS="$MOZ_SMP_FLAGS"
5d35b83
export MOZ_SERVICES_SYNC="1"
5d35b83
export STRIP=/bin/true
d144fd6
%if 0%{?build_with_pgo}
8fe69a3
GDK_BACKEND=x11 xvfb-run ./mach build
d144fd6
%else
5d35b83
./mach build
d144fd6
%endif
875d0c0
875d0c0
# create debuginfo for crash-stats.mozilla.com
875d0c0
%if %{enable_mozilla_crashreporter}
875d0c0
make -C objdir buildsymbols
875d0c0
%endif
cvsdist cac9c1c
c3e1bae
%if %{?run_tests}
c3e1bae
%if %{?system_nss}
0813120
ln -s %{_prefix}/bin/certutil objdir/dist/bin/certutil
0813120
ln -s %{_prefix}/bin/pk12util objdir/dist/bin/pk12util
c3e1bae
c3e1bae
%endif
c3e1bae
mkdir test_results
c3e1bae
./mach --log-no-times check-spidermonkey &> test_results/check-spidermonkey || true
1c41bbe
./mach --log-no-times check-spidermonkey &> test_results/check-spidermonkey-2nd-run || true
c3e1bae
./mach --log-no-times cppunittest &> test_results/cppunittest || true
c3e1bae
xvfb-run ./mach --log-no-times crashtest &> test_results/crashtest || true
c3e1bae
./mach --log-no-times gtest &> test_results/gtest || true
c3e1bae
xvfb-run ./mach --log-no-times jetpack-test &> test_results/jetpack-test || true
1c41bbe
# not working right now ./mach marionette-test &> test_results/marionette-test || true
c3e1bae
xvfb-run ./mach --log-no-times mochitest-a11y &> test_results/mochitest-a11y || true
c3e1bae
xvfb-run ./mach --log-no-times mochitest-browser &> test_results/mochitest-browser || true
c3e1bae
xvfb-run ./mach --log-no-times mochitest-chrome &> test_results/mochitest-chrome || true
c3e1bae
xvfb-run ./mach --log-no-times mochitest-devtools &> test_results/mochitest-devtools || true
c3e1bae
xvfb-run ./mach --log-no-times mochitest-plain &> test_results/mochitest-plain || true
c3e1bae
xvfb-run ./mach --log-no-times reftest &> test_results/reftest || true
1c41bbe
xvfb-run ./mach --log-no-times webapprt-test-chrome &> test_results/webapprt-test-chrome || true
1c41bbe
xvfb-run ./mach --log-no-times webapprt-test-content &> test_results/webapprt-test-content || true
c3e1bae
./mach --log-no-times webidl-parser-test &> test_results/webidl-parser-test || true
c3e1bae
xvfb-run ./mach --log-no-times xpcshell-test &> test_results/xpcshell-test || true
c3e1bae
%if %{?system_nss}
c3e1bae
rm -f  objdir/dist/bin/certutil
1c41bbe
rm -f  objdir/dist/bin/pk12util
c3e1bae
%endif
c3e1bae
c3e1bae
%endif
cvsdist cac9c1c
#---------------------------------------------------------------------
cvsdist cac9c1c
cvsdist cac9c1c
%install
cvsdist cac9c1c
Christopher Aillon 0b79269
# set up our default bookmarks
10d0e02
%if !0%{?flatpak}
b345c18
%{__cp} -p %{default_bookmarks_file} objdir/dist/bin/browser/chrome/en-US/locale/browser/bookmarks.html
332c921
%endif
Christopher Aillon 0b79269
Christopher Aillon 0b79269
# Make sure locale works for langpacks
a5dfe3a
%{__cat} > objdir/dist/bin/browser/defaults/preferences/firefox-l10n.js << EOF
Christopher Aillon 0b79269
pref("general.useragent.locale", "chrome://global/locale/intl.properties");
Christopher Aillon 0b79269
EOF
Christopher Aillon 0b79269
b748726
DESTDIR=%{buildroot} make -C objdir install
cvsdist cac9c1c
b748726
%{__mkdir_p} %{buildroot}{%{_libdir},%{_bindir},%{_datadir}/applications}
cvsdist cac9c1c
b748726
desktop-file-install --dir %{buildroot}%{_datadir}/applications %{SOURCE20}
6cd2d43
%if 0%{?wayland_backend_default}
d37312c
desktop-file-install --dir %{buildroot}%{_datadir}/applications %{SOURCE31}
d37312c
%else
dd0eb4d
desktop-file-install --dir %{buildroot}%{_datadir}/applications %{SOURCE29}
dd0eb4d
%endif
c75ced4
2c1f724
# set up the firefox start script
6cd2d43
%if 0%{?wayland_backend_default}
a1d5dfd
%global wayland_default true
d37312c
%else
a1d5dfd
%global wayland_default false
d37312c
%endif
b748726
%{__rm} -rf %{buildroot}%{_bindir}/firefox
0813120
%{__sed} -e 's/__DEFAULT_WAYLAND__/%{wayland_default}/' \
9ffa95d
         -e 's,/__PREFIX__,%{_prefix},g' %{SOURCE21} > %{buildroot}%{_bindir}/firefox
b748726
%{__chmod} 755 %{buildroot}%{_bindir}/firefox
a1d5dfd
6cd2d43
%if 0%{?wayland_backend_default}
9ffa95d
%{__sed} -e 's,/__PREFIX__,%{_prefix},g' %{SOURCE30} > %{buildroot}%{_bindir}/firefox-x11
d37312c
%{__chmod} 755 %{buildroot}%{_bindir}/firefox-x11
d37312c
%else
9ffa95d
%{__sed} -e 's,/__PREFIX__,%{_prefix},g' %{SOURCE28} > %{buildroot}%{_bindir}/firefox-wayland
1886e5c
%{__chmod} 755 %{buildroot}%{_bindir}/firefox-wayland
37e796d
%endif
1886e5c
b748726
%{__install} -p -D -m 644 %{SOURCE23} %{buildroot}%{_mandir}/man1/firefox.1
cvsdist cac9c1c
b748726
%{__rm} -f %{buildroot}/%{mozappdir}/firefox-config
b748726
%{__rm} -f %{buildroot}/%{mozappdir}/update-settings.ini
cvsdist cac9c1c
Christopher Aillon 37171ee
for s in 16 22 24 32 48 256; do
b748726
    %{__mkdir_p} %{buildroot}%{_datadir}/icons/hicolor/${s}x${s}/apps
360a075
    %{__cp} -p browser/branding/official/default${s}.png \
b748726
               %{buildroot}%{_datadir}/icons/hicolor/${s}x${s}/apps/firefox.png
Christopher Aillon 37171ee
done
2c1570e
06c81c9
# Install hight contrast icon
b748726
%{__mkdir_p} %{buildroot}%{_datadir}/icons/hicolor/symbolic/apps
06c81c9
%{__cp} -p %{SOURCE25} \
b748726
           %{buildroot}%{_datadir}/icons/hicolor/symbolic/apps
06c81c9
Richard Hughes fbebd2d
# Register as an application to be visible in the software center
Richard Hughes fbebd2d
#
Richard Hughes fbebd2d
# NOTE: It would be *awesome* if this file was maintained by the upstream
Richard Hughes fbebd2d
# project, translated and installed into the right place during `make install`.
Richard Hughes fbebd2d
#
Richard Hughes fbebd2d
# See http://www.freedesktop.org/software/appstream/docs/ for more details.
Richard Hughes fbebd2d
#
b748726
mkdir -p %{buildroot}%{_datadir}/appdata
b748726
cat > %{buildroot}%{_datadir}/appdata/%{name}.appdata.xml <
Richard Hughes fbebd2d
Richard Hughes fbebd2d
Richard Hughes fbebd2d
Richard Hughes fbebd2d
BugReportURL: https://bugzilla.mozilla.org/show_bug.cgi?id=1071061
Richard Hughes fbebd2d
SentUpstream: 2014-09-22
Richard Hughes fbebd2d
-->
Richard Hughes fbebd2d
<application>
Richard Hughes fbebd2d
  <id type="desktop">firefox.desktop</id>
Richard Hughes fbebd2d
  <metadata_license>CC0-1.0</metadata_license>
Richard Hughes fbebd2d
  <description>
Richard Hughes fbebd2d
    

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

Richard Hughes fbebd2d
    
Richard Hughes fbebd2d
  </description>
Richard Hughes fb4e18f
  <url type="homepage">http://www.mozilla.org/</url>
Richard Hughes fbebd2d
  <screenshots>
Richard Hughes fbebd2d
    <screenshot type="default">https://raw.githubusercontent.com/hughsie/fedora-appstream/master/screenshots-extra/firefox/a.png</screenshot>
Richard Hughes fbebd2d
    <screenshot>https://raw.githubusercontent.com/hughsie/fedora-appstream/master/screenshots-extra/firefox/b.png</screenshot>
Richard Hughes fbebd2d
    <screenshot>https://raw.githubusercontent.com/hughsie/fedora-appstream/master/screenshots-extra/firefox/c.png</screenshot>
Richard Hughes fbebd2d
  </screenshots>
Richard Hughes fbebd2d
  
Richard Hughes fbebd2d
  <updatecontact>someone_who_cares@upstream_project.org</updatecontact>
Richard Hughes fbebd2d
   -->
Richard Hughes fbebd2d
</application>
Richard Hughes fbebd2d
EOF
Richard Hughes fbebd2d
3d518fe
echo > %{name}.lang
731d588
%if %{with langpacks}
Christopher Aillon 49840ed
# Extract langpacks, make any mods needed, repack the langpack, and install it.
b748726
%{__mkdir_p} %{buildroot}%{langpackdir}
Christopher Aillon c0f195a
%{__tar} xf %{SOURCE1}
0e00b2a
for langpack in `ls firefox-langpacks/*.xpi`; do
0e00b2a
  language=`basename $langpack .xpi`
Christopher Aillon 49840ed
  extensionID=langpack-$language@firefox.mozilla.org
Christopher Aillon 49840ed
  %{__mkdir_p} $extensionID
Martin Stransky c4c0150
  unzip -qq $langpack -d $extensionID
Christopher Aillon 49840ed
  find $extensionID -type f | xargs chmod 644
0e00b2a
Christopher Aillon 49840ed
  cd $extensionID
Martin Stransky c4c0150
  zip -qq -r9mX ../${extensionID}.xpi *
Christopher Aillon 49840ed
  cd -
Christopher Aillon 49840ed
b748726
  %{__install} -m 644 ${extensionID}.xpi %{buildroot}%{langpackdir}
fa79345
  language=`echo $language | sed -e 's/-/_/g'`
3d518fe
  echo "%%lang($language) %{langpackdir}/${extensionID}.xpi" >> %{name}.lang
0e00b2a
done
0e00b2a
%{__rm} -rf firefox-langpacks
0e00b2a
Martin Stransky a62de3b
# Install langpack workaround (see #707100, #821169)
Martin Stransky a62de3b
function create_default_langpack() {
Martin Stransky a62de3b
language_long=$1
Martin Stransky a62de3b
language_short=$2
b748726
cd %{buildroot}%{langpackdir}
Martin Stransky a62de3b
ln -s langpack-$language_long@firefox.mozilla.org.xpi langpack-$language_short@firefox.mozilla.org.xpi
Martin Stransky a62de3b
cd -
3d518fe
echo "%%lang($language_short) %{langpackdir}/langpack-$language_short@firefox.mozilla.org.xpi" >> %{name}.lang
Martin Stransky a62de3b
}
Martin Stransky a62de3b
Martin Stransky 499035c
# Table of fallbacks for each language
Martin Stransky fcde0fe
# please file a bug at bugzilla.redhat.com if the assignment is incorrect
Martin Stransky 499035c
create_default_langpack "bn-IN" "bn"
Martin Stransky 499035c
create_default_langpack "es-AR" "es"
Martin Stransky 499035c
create_default_langpack "fy-NL" "fy"
Martin Stransky 499035c
create_default_langpack "ga-IE" "ga"
Martin Stransky 499035c
create_default_langpack "gu-IN" "gu"
Martin Stransky 499035c
create_default_langpack "hi-IN" "hi"
Martin Stransky 499035c
create_default_langpack "hy-AM" "hy"
Martin Stransky 499035c
create_default_langpack "nb-NO" "nb"
Martin Stransky 499035c
create_default_langpack "nn-NO" "nn"
Martin Stransky 499035c
create_default_langpack "pa-IN" "pa"
Martin Stransky 499035c
create_default_langpack "pt-PT" "pt"
Martin Stransky 499035c
create_default_langpack "sv-SE" "sv"
Martin Stransky 499035c
create_default_langpack "zh-TW" "zh"
731d588
%endif # with langpacks
Martin Stransky a62de3b
c75ced4
b748726
%{__mkdir_p} %{buildroot}/%{mozappdir}/browser/defaults/preferences
Martin Stransky ff14fd5
4c1ef45
# System config dir
b748726
%{__mkdir_p} %{buildroot}/%{_sysconfdir}/%{name}/pref
4c1ef45
884f977
# System extensions
b748726
%{__mkdir_p} %{buildroot}%{_datadir}/mozilla/extensions/%{firefox_app_id}
b748726
%{__mkdir_p} %{buildroot}%{_libdir}/mozilla/extensions/%{firefox_app_id}
ab0f13f
ab0f13f
# Copy over the LICENSE
b748726
%{__install} -p -c -m 644 LICENSE %{buildroot}/%{mozappdir}
2405ef3
875d0c0
# Use the system hunspell dictionaries
b748726
%{__rm} -rf %{buildroot}%{mozappdir}/dictionaries
b748726
ln -s %{_datadir}/myspell %{buildroot}%{mozappdir}/dictionaries
875d0c0
341ecd0
# Enable crash reporter for Firefox application
4225333
%if %{enable_mozilla_crashreporter}
b748726
sed -i -e "s/\[Crash Reporter\]/[Crash Reporter]\nEnabled=1/" %{buildroot}/%{mozappdir}/application.ini
56dc4a6
# Add debuginfo for crash-stats.mozilla.com
b748726
%{__mkdir_p} %{buildroot}/%{moz_debug_dir}
b748726
%{__cp} objdir/dist/%{symbols_file_name} %{buildroot}/%{moz_debug_dir}
341ecd0
%endif
341ecd0
c3e1bae
%if %{run_tests}
c3e1bae
# Add debuginfo for crash-stats.mozilla.com
b748726
%{__mkdir_p} %{buildroot}/test_results
b748726
%{__cp} test_results/* %{buildroot}/test_results
c3e1bae
%endif
c3e1bae
6ffc9e1
# Default
b748726
%{__cp} %{SOURCE12} %{buildroot}%{mozappdir}/browser/defaults/preferences
0a58c3e
c95f62a
# Copy over run-mozilla.sh
c95f62a
%{__cp} build/unix/run-mozilla.sh %{buildroot}%{mozappdir}
c95f62a
e1c3854
# Add distribution.ini
b748726
%{__mkdir_p} %{buildroot}%{mozappdir}/distribution
b748726
%{__cp} %{SOURCE26} %{buildroot}%{mozappdir}/distribution
e1c3854
0a58c3e
# Remove copied libraries to speed up build
b748726
rm -f %{buildroot}%{mozappdirdev}/sdk/lib/libmozjs.so
b748726
rm -f %{buildroot}%{mozappdirdev}/sdk/lib/libmozalloc.so
b748726
rm -f %{buildroot}%{mozappdirdev}/sdk/lib/libxul.so
cvsdist cac9c1c
#---------------------------------------------------------------------
cvsdist cac9c1c
c75ced4
# Moves defaults/preferences to browser/defaults/preferences
f14e989
%pretrans -p <lua>
cb23180
require 'posix'
cb23180
require 'os'
cb23180
if (posix.stat("%{mozappdir}/browser/defaults/preferences", "type") == "link") then
cb23180
  posix.unlink("%{mozappdir}/browser/defaults/preferences")
cb23180
  posix.mkdir("%{mozappdir}/browser/defaults/preferences")
cb23180
  if (posix.stat("%{mozappdir}/defaults/preferences", "type") == "directory") then
6ffc9e1
    for i,filename in pairs(posix.dir("%{mozappdir}/defaults/preferences")) do
cb23180
      os.rename("%{mozappdir}/defaults/preferences/"..filename, "%{mozappdir}/browser/defaults/preferences/"..filename)
cb23180
    end
cb23180
    f = io.open("%{mozappdir}/defaults/preferences/README","w")
cb23180
    if f then
cb23180
      f:write("Content of this directory has been moved to %{mozappdir}/browser/defaults/preferences.")
cb23180
      f:close()
cb23180
    end
cb23180
  end
cb23180
end
c75ced4
ec429e9
Christopher Aillon 5f70bce
%preun
Christopher Aillon 5f70bce
# is it a final removal?
Christopher Aillon 5f70bce
if [ $1 -eq 0 ]; then
Christopher Aillon 5f70bce
  %{__rm} -rf %{mozappdir}/components
Christopher Aillon 5f70bce
  %{__rm} -rf %{mozappdir}/extensions
Christopher Aillon 5f70bce
  %{__rm} -rf %{mozappdir}/plugins
Christopher Aillon 5f70bce
  %{__rm} -rf %{langpackdir}
Christopher Aillon 5f70bce
fi
Christopher Aillon 5f70bce
cvsdist cac9c1c
%post
5732aa4
update-desktop-database &> /dev/null || :
8f828a9
touch --no-create %{_datadir}/icons/hicolor &>/dev/null || :
19c0cec
cvsdist cac9c1c
%postun
Christopher Aillon a52b725
update-desktop-database &> /dev/null || :
8f828a9
if [ $1 -eq 0 ] ; then
8f828a9
    touch --no-create %{_datadir}/icons/hicolor &>/dev/null
8f828a9
    gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
b7c5c4d
fi
cvsdist cac9c1c
8f828a9
%posttrans
8f828a9
gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
c6d9eb1
fa79345
%files -f %{name}.lang
cvsdist cac9c1c
%{_bindir}/firefox
73632af
%{mozappdir}/firefox
Martin Stransky c0ab6d6
%{mozappdir}/firefox-bin
5fe54d7
%doc %{_mandir}/man1/*
73eccea
%dir %{_sysconfdir}/%{name}
32c9b2b
%dir %{_sysconfdir}/%{name}/*
Martin Stransky 349fbd0
%dir %{_datadir}/mozilla/extensions/*
Martin Stransky 349fbd0
%dir %{_libdir}/mozilla/extensions/*
Richard Hughes fbebd2d
%{_datadir}/appdata/*.appdata.xml
e8f1982
%{_datadir}/applications/%{name}.desktop
1fb0c4e
%dir %{mozappdir}
1a940bc
%license %{mozappdir}/LICENSE
Martin Stransky ff14fd5
%{mozappdir}/browser/chrome
Martin Stransky ff14fd5
%{mozappdir}/browser/chrome.manifest
0a58c3e
%{mozappdir}/browser/defaults/preferences/firefox-redhat-default-prefs.js
24a61e8
%{mozappdir}/browser/features/*.xpi
e1c3854
%{mozappdir}/distribution/distribution.ini
450594e
# That's Windows only
450594e
%ghost %{mozappdir}/browser/features/aushelper@mozilla.org.xpi
Martin Stransky ff14fd5
%attr(644, root, root) %{mozappdir}/browser/blocklist.xml
731d588
%if %{with langpacks}
Christopher Aillon 8cc5a04
%dir %{langpackdir}
0a804ca
%endif
Martin Stransky ff14fd5
%{mozappdir}/browser/omni.ja
c197919
%{mozappdir}/chrome.manifest
c95f62a
%{mozappdir}/run-mozilla.sh
bede30d
%{mozappdir}/application.ini
a19743f
%{mozappdir}/pingsender
5fe54d7
%exclude %{mozappdir}/removed-files
8fa89a4
%{_datadir}/icons/hicolor/16x16/apps/firefox.png
8fa89a4
%{_datadir}/icons/hicolor/22x22/apps/firefox.png
8fa89a4
%{_datadir}/icons/hicolor/24x24/apps/firefox.png
8fa89a4
%{_datadir}/icons/hicolor/256x256/apps/firefox.png
8fa89a4
%{_datadir}/icons/hicolor/32x32/apps/firefox.png
8fa89a4
%{_datadir}/icons/hicolor/48x48/apps/firefox.png
06c81c9
%{_datadir}/icons/hicolor/symbolic/apps/firefox-symbolic.svg
4225333
%if %{enable_mozilla_crashreporter}
875d0c0
%{mozappdir}/crashreporter
875d0c0
%{mozappdir}/crashreporter.ini
c197919
%{mozappdir}/minidump-analyzer
875d0c0
%{mozappdir}/Throbber-small.gif
68cb185
%{mozappdir}/browser/crashreporter-override.ini
341ecd0
%endif
875d0c0
%{mozappdir}/*.so
f80b8f8
%{mozappdir}/gtk2/*.so
0a58c3e
%{mozappdir}/defaults/pref/channel-prefs.js
875d0c0
%{mozappdir}/dependentlibs.list
875d0c0
%{mozappdir}/dictionaries
875d0c0
%{mozappdir}/omni.ja
875d0c0
%{mozappdir}/platform.ini
875d0c0
%{mozappdir}/plugin-container
8a0ee5a
%{mozappdir}/gmp-clearkey
0071462
%{mozappdir}/fonts/TwemojiMozilla.ttf
Martin Stransky 48d8fda
%if !%{?system_nss}
Martin Stransky 924133a
%{mozappdir}/libfreeblpriv3.chk
Martin Stransky 48d8fda
%{mozappdir}/libnssdbm3.chk
Martin Stransky 48d8fda
%{mozappdir}/libsoftokn3.chk
49bb7a9
%exclude %{mozappdir}/libnssckbi.so
Martin Stransky 48d8fda
%endif
341ecd0
cvsdist cac9c1c
#---------------------------------------------------------------------
cvsdist cac9c1c
cvsdist cac9c1c
%changelog
dc7ec55
* Thu May 2 2019 Martin Stransky <stransky@redhat.com> - 66.0.3-2
dc7ec55
- Removed fix for mozbz#526293 as it's broken and does not
dc7ec55
  bring any new functionality.
dc7ec55
f232c3c
* Thu Apr 11 2019 Martin Stransky <stransky@redhat.com> - 66.0.3-1
f232c3c
- Updated to 66.0.3 (Build 1)
f232c3c
a2eb082
* Mon Apr 1 2019 Martin Stransky <stransky@redhat.com> - 66.0.2-1
a2eb082
- Updated to 66.0.2 (Build 1)
a2eb082
- Added fixes for mozbz#1526243, mozbz#1540145
a2eb082
384fee2
* Thu Mar 28 2019 Martin Stransky <stransky@redhat.com> - 66.0.1-4
384fee2
- Added fix for mozbz#1539471 - wayland popups/tooltips
384fee2
739f4c2
* Wed Mar 27 2019 Martin Stransky <stransky@redhat.com> - 66.0.1-3
739f4c2
- Added fix for mozbz#526293 - show remote locations at
739f4c2
  file chooser dialog
739f4c2
5055837
* Fri Mar 22 2019 Martin Stransky <stransky@redhat.com> - 66.0.1-1
5055837
- Updated to 66.0.1 (Build 1)
5055837
0813120
* Thu Mar 21 2019 Martin Stransky <stransky@redhat.com> - 66.0-10.test
ec310c7
- Test module build, use flatpak global define
ec310c7
- Added fix for F31 (mozbz#1533969)
0813120
cb31356
* Thu Mar 21 2019 Martin Stransky <stransky@redhat.com> - 66.0-9
cb31356
- Release build
cb31356
ad36ec0
* Thu Mar 21 2019 Martin Stransky <stransky@redhat.com> - 66.0-8.test
ad36ec0
- Added module specific build config
51a685c
- Fixed mozbz#1423598 for multi-monitor setup
ad36ec0
332c921
* Wed Mar 20 2019 Martin Stransky <stransky@redhat.com> - 66.0-7.test
332c921
- Switched to test builds
70909c2
- Updated mozbz#1468911 patch
332c921
7c6cd89
* Mon Mar 18 2019 Martin Stransky <stransky@redhat.com> - 66.0-6
7c6cd89
- Build release candidate
7c6cd89
- Disabled default Wayland backend for Fedora 30
7c6cd89
a99b4bf
* Mon Mar 18 2019 Martin Stransky <stransky@redhat.com> - 66.0-5
a99b4bf
- Added fix for mozbz#1468911
a99b4bf
c75c4e9
* Mon Mar 18 2019 Martin Stransky <stransky@redhat.com> - 66.0-4
c75c4e9
- Release build
c75c4e9
54b6f91
* Fri Mar 15 2019 Martin Stransky <stransky@redhat.com> - 66.0-3
2253cae
- Updated to 66.0 (Build 3)
2253cae
- Re-enable s390x arches
2253cae
- Fixed Wayland specific bugs mozbz#1535567, mozbz#1431399
2253cae
83e8010
* Tue Mar 12 2019 Martin Stransky <stransky@redhat.com> - 66.0-1
2253cae
- Updated to 66.0 (Build 1)
83e8010
d35dd9e
* Fri Mar 1 2019 Martin Stransky <stransky@redhat.com> - 65.0.2-1
d35dd9e
- Updated to 65.0.2
d35dd9e
- Disabled PGO+LTO for Fedora 30
d35dd9e
- Disabled Mozilla Crashreporter to get Wayland crashes by ABRT
4c135f9
- Disabled s390x builds due to
4c135f9
  https://pagure.io/fedora-infrastructure/issue/7581
4c135f9
d35dd9e
4081c01
* Thu Feb 28 2019 Martin Stransky <stransky@redhat.com> - 65.0.1-2
c685c9d
- Enable ARBT for Fedora 29 and later to catch wayland crashes.
c685c9d
- Disable system libvpx for Fedora 30 and later.
4081c01
0af579b
* Wed Feb 20 2019 Martin Stransky <stransky@redhat.com> - 65.0.1-1
0af579b
- Disabled s390x/f28 builds due to
0af579b
  https://pagure.io/fedora-infrastructure/issue/7581
0af579b
671ae48
* Fri Feb 15 2019 Jan Horak <jhorak@redhat.com> - 65.0.1-1
671ae48
- Update to 65.0.1
671ae48
5c3efe8
* Mon Feb 4 2019 Martin Stransky <stransky@redhat.com> - 65.0-4
5c3efe8
- Added fix for mozbz#1522780
5c3efe8
66135e9
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 65.0-3
66135e9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
66135e9
faf4913
* Thu Jan 31 2019 Jan Grulich <jgrulich@redhat.com> - 65.0-2
faf4913
- Re-enable PipeWire support
faf4913
eec2ffa
* Mon Jan 28 2019 Martin Stransky <stransky@redhat.com> - 65.0-1
0813120
- Update to 65.0 build 2
eec2ffa
b0598cb
* Wed Jan 16 2019 Martin Stransky <stransky@redhat.com> - 64.0.2-2
16f80d0
- Rebuild
16f80d0
0ed6837
* Thu Jan 10 2019 Jan Horak <jhorak@redhat.com> - 64.0.2-1
0ed6837
- Update to 64.0.2
0ed6837
c858294
* Mon Jan  7 2019 Jan Horak <jhorak@redhat.com> - 64.0-7
c858294
- Pipewire patch rebased (thanks to Tomas Popela)
94f9ee9
- Enabled PGO on some arches.
c858294
ea5307d
* Fri Jan 4 2019 Carmen Bianca Bakker <carmenbianca@fedoraproject.org> - 64.0-6
ea5307d
- Changed locale detector to handle Esperanto (rhbz#1656900)
ea5307d
6cd2d43
* Fri Dec 21 2018 Martin Stransky <stransky@redhat.com> - 64.0-5
6cd2d43
- Test PGO build.
6cd2d43
c6a456b
* Wed Dec 12 2018 Martin Stransky <stransky@redhat.com> - 64.0-4
c6a456b
- Use gcc on all platforms for official release.
c6a456b
d144fd6
* Wed Dec 12 2018 Martin Stransky <stransky@redhat.com> - 64.0-3
d144fd6
- Updated PGO build setup.
d144fd6
85cd9b6
* Tue Dec 4 2018 Martin Stransky <stransky@redhat.com> - 64.0-2
9b2debb
- Updated to Firefox 64 (Build 3)
30f48bf
- Built with Clang on some arches.
2ad016d
4ba3502
* Mon Nov 26 2018 Martin Stransky <stransky@redhat.com> - 63.0.3-3
4ba3502
- [Wayland] Fixed issues with Sway compositor and wl_keyboard setup
4ba3502
  (mozbz#1507475).
4ba3502
e693e46
* Wed Nov 21 2018 Martin Stransky <stransky@redhat.com> - 63.0.3-2
4ba3502
- [Wayland] Fixed mozbz#1507475 - crash when display changes
4ba3502
  (rhbz#1646151).
e693e46
66f0419
* Thu Nov 15 2018 Martin Stransky <stransky@redhat.com> - 63.0.3-1
66f0419
- Updated to latest upstream (63.0.3)
66f0419
513a689
* Tue Nov 13 2018 Martin Stransky <stransky@redhat.com> - 63.0.1-6
0df3489
- Added an option to build with clang/llvm.
fc67a69
- Fixed debug builds.
fc67a69
- Fixed warnings at Wayland clipboard code.
513a689
e035902
* Tue Nov 6 2018 Martin Stransky <stransky@redhat.com> - 63.0.1-5
e035902
- Added fix for mozbz#1502457- disable Contextual Feature
e035902
  Recommender/shield studies by default.
e035902
430f061
* Mon Nov 5 2018 Martin Stransky <stransky@redhat.com> - 63.0.1-4
430f061
- Added clipboard fix (mozbz#1504689)
430f061
561a9b5
* Fri Nov 2 2018 Dan Horak <dhorak@redhat.com> - 63.0.1-3
561a9b5
- Added fixes for ppc64le
561a9b5
b2a3494
* Thu Nov 1 2018 Martin Stransky <stransky@redhat.com> - 63.0.1-2
b2a3494
- Fixed typo on man page (rhbz#1643766)
b2a3494
615b2f4
* Thu Nov 1 2018 Martin Stransky <stransky@redhat.com> - 63.0.1-1
615b2f4
- Updated to latest upstream (63.0.1 build 4)
615b2f4
dcfbd3d
* Tue Oct 23 2018 Martin Stransky <stransky@redhat.com> - 63.0-2
dcfbd3d
- Updated to latest upstream (63.0 build 2)
dcfbd3d
fdd5163
* Thu Oct 18 2018 Martin Stransky <stransky@redhat.com> - 63.0-1
fdd5163
- Updated to latest upstream (63.0)
fdd5163
- Updated PipeWire patch
fdd5163
f4af4b7
* Tue Oct 9 2018 Martin Stransky <stransky@redhat.com> - 62.0.3-4
f4af4b7
- Added fix for mozbz#1447775 - wrong dropspace sizing.
f4af4b7
dbbd17c
* Tue Oct 9 2018 Martin Stransky <stransky@redhat.com> - 62.0.3-3
dbbd17c
- Added fix for mozbz#1493081 - popups incorrectly placed and sized.
dbbd17c
d37312c
* Mon Oct 8 2018 Martin Stransky <stransky@redhat.com> - 62.0.3-2
d37312c
- Added pipewire patch (mozbz#1496359)
d37312c
- Added Wayland patches from Firefox 63
d37312c
- Enable Wayland backed by default on Fedora 30
d37312c
ad2263b
* Tue Oct 2 2018 Martin Stransky <stransky@redhat.com> - 62.0.3-1
ad2263b
- Updated to latest upstream (62.0.3)
ad2263b
b7acc1e
* Wed Sep 26 2018 Martin Stransky <stransky@redhat.com> - 62.0.2-3
b7acc1e
- Enabled DBus remote for all Gtk+ backends
b7acc1e
- Removed obsoleted patches
b7acc1e
b7acc1e
* Tue Sep 25 2018 Martin Stransky <stransky@redhat.com> - 62.0.2-2
d3fbeb2
- Disable workaround for mozbz#1342344 - GFX glitches when building
d3fbeb2
  with -O3/gcc 7.2
d3fbeb2
17dcd75
* Mon Sep 24 2018 Jan Horak <jhorak@redhat.com> - 62.0.2-1
17dcd75
- Update to 62.0.2
17dcd75
517a725
* Mon Sep 17 2018 Martin Stransky <stransky@redhat.com> - 62.0-3
517a725
- Added spellchecker.dictionary_path pref pointer to /usr/share/myspell.
517a725
  Thanks to Peter Oliver (rhbz#1627837)
517a725
acded2a
* Tue Sep 4 2018 Martin Stransky <stransky@redhat.com> - 62.0-2
acded2a
- Update to 62.0 (Build 2)
acded2a
bd77262
* Tue Aug 28 2018 Martin Stransky <stransky@redhat.com> - 62.0-1
bd77262
- Update to 62.0
bd77262
35295a2
* Wed Aug 15 2018 Ondrej Zoder <ozoder@redhat.com> - 61.0.2-3
35295a2
- Added patches for mozbz#1427700 and mozbz#1463809
35295a2
54a2ce1
* Mon Aug 13 2018 Ondrej Zoder <ozoder@redhat.com> - 61.0.2-2
54a2ce1
- Updated symbolic icon
54a2ce1
b43c4e0
* Thu Aug 9 2018 Martin Stransky <stransky@redhat.com> - 61.0.2-1
b43c4e0
- Update to 61.0.2
b43c4e0
13b65c6
* Wed Aug 1 2018 Ondrej Zoder <ozoder@redhat.com> - 61.0.1-4
13b65c6
- Fixed rhbz#1610428
13b65c6
8fbeae4
* Tue Jul 17 2018 Ondrej Zoder <ozoder@redhat.com> - 61.0.1-3
8fbeae4
- Bump release
8fbeae4
cc5be42
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 61.0.1-2
cc5be42
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
cc5be42
11b3cb6
* Tue Jul 10 2018 Ondrej Zoder <ozoder@redhat.com> - 61.0.1
11b3cb6
- Update to 61.0.1
11b3cb6
146e515
* Mon Jun 25 2018 Martin Stransky <stransky@redhat.com> - 61.0-4
146e515
- Disabled mozbz#1424422 as it's broken.
146e515
eda981d
* Fri Jun 22 2018 Martin Stransky <stransky@redhat.com> - 61.0-3
eda981d
- Update to 61.0 Build 3
eda981d
1d48da8
* Thu Jun 21 2018 Martin Stransky <stransky@redhat.com> - 61.0-2
1d48da8
- Disabled system hunspell due to rhbz#1593494
1d48da8
e8f1982
* Tue Jun 19 2018 Martin Stransky <stransky@redhat.com> - 61.0-1
e8f1982
- Updated to 61.0
e8f1982
- Created firefox-wayland subpackage with wayland launcher.
e8f1982
bacad2f
* Mon Jun 11 2018 Jan Horak <jhorak@redhat.com> - 60.0.2-1
bacad2f
- Update to 60.0.2
bacad2f
0c068bf
* Mon Jun 4 2018 Martin Stransky <stransky@redhat.com> - 60.0.1-6
0c068bf
- Fixed mozbz#1466473, rhbz#1585300 - Fix GL detection.
0c068bf
- Fixed desktop file names (rhbz#1585369).
0c068bf
040ebc2
* Wed May 30 2018 Martin Stransky <stransky@redhat.com> - 60.0.1-5
040ebc2
- Added workaround for mozbz#1464823 which makes GL layer
040ebc2
  compositor usable on Wayland.
040ebc2
c354b7e
* Tue May 29 2018 Martin Stransky <stransky@redhat.com> - 60.0.1-4
c354b7e
- Added fix for mozbz#1464808 - Set default D&D action to move
c354b7e
  on Wayland.
c354b7e
ff9eb9d
* Fri May 25 2018 Martin Stransky <stransky@redhat.com> - 60.0.1-3
ff9eb9d
- Added fix for mozbz#1436242 (rhbz#1577277) - Firefox IPC crashes.
0af445c
- Added fix for mozbz#1462640 - Sandbox disables eglGetDisplay()
0af445c
  call on Wayland/EGL backend.
ff9eb9d
dd0eb4d
* Fri May 25 2018 Martin Stransky <stransky@redhat.com> - 60.0.1-2
dd0eb4d
- Enable Wayland backend.
dd0eb4d
0437509
* Wed May 23 2018 Jan Horak <jhorak@redhat.com> - 60.0.1-1
0437509
- Update to 60.0.1
0437509
8cff86d
* Wed May 16 2018 Martin Stransky <stransky@redhat.com> - 60.0-6
8cff86d
- Added patch from rhbz#1498561 - second arch (ppc*) crashes.
8cff86d
face401
* Wed May 16 2018 Martin Stransky <stransky@redhat.com> - 60.0-5
face401
- Disabled jemalloc on second arches.
face401
9cd4355
* Thu May 3 2018 Martin Stransky <stransky@redhat.com> - 60.0-4
9cd4355
- Updated to Firefox 60 build 2
9cd4355
3430410
* Thu May 3 2018 Martin Stransky <stransky@redhat.com> - 60.0-3
3430410
- Added patch from mozbz#1375074 - fixes aarch64 baseline JIT crashes
3430410
37e796d
* Thu May 3 2018 Martin Stransky <stransky@redhat.com> - 60.0-2
37e796d
- Make Wayland backend optional and disable it by default due to WebGL issues.
37e796d
ef66043
* Wed May 2 2018 Martin Stransky <stransky@redhat.com> - 60.0-1
ba246d4
- Update to Firefox 60 build 1
ba246d4
- Ship firefox-wayland launch script
ba246d4
5841237
* Mon Apr 30 2018 Martin Stransky <stransky@redhat.com> - 60.0-0.5
5841237
- Build with Wayland backend enabled.
5841237
8f19acc
* Mon Apr 30 2018 Martin Stransky <stransky@redhat.com> - 60.0-0.4
14c907c
- Added patches for correct popups position at CSD mode (mozilla-1457691).
14c907c
bbe9daf
* Fri Apr 27 2018 Martin Stransky <stransky@redhat.com> - 60.0-0.2
bbe9daf
- Update to 60.0 Beta 16
bbe9daf
9c46b2a
* Tue Apr 24 2018 Martin Stransky <stransky@redhat.com> - 60.0-0.1
7bf0e81
- Update to 60.0 Beta 15