From 1d040b429fe55c9a147b172b3588312a069cf454 Mon Sep 17 00:00:00 2001 From: B Stack Date: Mon, 24 May 2021 08:58:47 -0400 Subject: 88.0.1-1 from fedora --- librewolf.spec | 1739 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 1739 insertions(+) create mode 100644 librewolf.spec (limited to 'librewolf.spec') diff --git a/librewolf.spec b/librewolf.spec new file mode 100644 index 0000000..c0bfc2f --- /dev/null +++ b/librewolf.spec @@ -0,0 +1,1739 @@ +# Produce a build suitable for release, i.e. use PGO/LTO. You can turn it off +# when building locally to reduce build time. +%global release_build 1 + +# Run Mozilla test suite as a part of compile rpm section. Turn off when +# building locally and don't want to spend 24 hours waiting for results. +%global run_firefox_tests 0 +%ifarch x86_64 %{ix86} +%global run_firefox_tests 0 +%endif + +# Don't create debuginfo rpm packages. It reduces build time as +# exctracting debuginfo takes long time. +%global create_debuginfo 1 + +# Produce debug (non-optimized) package build. Suitable for debugging only +# as the build is *very* slow. +%global debug_build 0 + +%global system_nss 1 +%global build_with_clang 0 +%global build_with_asan 0 +%global test_on_wayland 1 + +# There are still build problems on s390x, see +# https://koji.fedoraproject.org/koji/taskinfo?taskID=55048351 +# https://bugzilla.redhat.com/show_bug.cgi?id=1897522 +ExcludeArch: s390x + +%ifarch armv7hl +%global create_debuginfo 0 +%endif + +# Temporary disabled due to +# https://bugzilla.redhat.com/show_bug.cgi?id=1951606 +%global enable_mozilla_crashreporter 0 +%ifarch x86_64 %{ix86} +%global enable_mozilla_crashreporter 1 +%endif +%if %{build_with_asan} +%global enable_mozilla_crashreporter 0 +%endif +%if 0%{?flatpak} +%global enable_mozilla_crashreporter 0 +%endif +%if !%{create_debuginfo} +%define _unpackaged_files_terminate_build 0 +%global debug_package %{nil} +%global enable_mozilla_crashreporter 0 +%endif + +%global system_ffi 1 +%ifarch armv7hl +%global system_libvpx 1 +%else +%global system_libvpx 0 +%endif +%global hardened_build 1 +%global system_jpeg 1 +%global disable_elfhack 1 +%global use_bundled_cbindgen 1 +%if %{debug_build} +%global release_build 0 +%endif +# Build PGO+LTO on x86_64 and aarch64 only due to build issues +# on other arches. +%global build_with_pgo 0 +%ifarch x86_64 +%if %{release_build} +%global build_with_pgo 1 +%endif +%endif +%if 0%{?flatpak} +%global build_with_pgo 0 +%endif +# Big endian platforms +%ifarch ppc64 s390x +%global big_endian 1 +%endif + +%if 0%{?build_with_pgo} +%global use_xvfb 1 +%global build_tests 1 +%endif + +%if 0%{?run_firefox_tests} +%global use_xvfb 1 +%global build_tests 1 +%endif + +%global launch_wayland_compositor 0 +%if %{build_with_pgo} && %{test_on_wayland} +%global launch_wayland_compositor 1 +%endif +%if %{run_firefox_tests} && %{test_on_wayland} +%global launch_wayland_compositor 1 +%endif + +%global default_bookmarks_file %{_datadir}/bookmarks/default-bookmarks.html +%global firefox_app_id \{ec8030f7-c20a-464f-9b0e-13a3a9e97384\} +# Minimal required versions +%global cairo_version 1.13.1 +%global freetype_version 2.1.9 +%global libnotify_version 0.7.0 +%if %{?system_libvpx} +%global libvpx_version 1.8.2 +%endif + +%if %{?system_nss} +%global nspr_version 4.21 +%global nspr_build_version %{nspr_version} +%global nss_version 3.63 +%global nss_build_version %{nss_version} +%endif + +%global mozappdir %{_libdir}/librewolf +%global mozappdirdev %{_libdir}/librewolf-devel-%{version} +%global langpackdir %{mozappdir}/langpacks +%global tarballdir firefox-%{version} + +%global official_branding 1 + +%bcond_with langpacks + +%if !%{release_build} +%global pre_tag .npgo +%endif +%if %{build_with_clang} +%global pre_tag .clang +%endif +%if %{build_with_asan} +%global pre_tag .asan +%global build_with_pgo 0 +%endif +%if !%{system_nss} +%global nss_tag .nss +%endif +%if %{debug_build} +%global pre_tag .debug +%endif + +# Exclude private libraries from autogenerated provides and requires +%global __provides_exclude_from ^%{mozappdir} +%global __requires_exclude ^(%%(find %{buildroot}%{mozappdir} -name '*.so' | xargs -n1 basename | sort -u | paste -s -d '|' -)) + +Summary: Mozilla Firefox Web browser +Name: librewolf +%global enable_mozilla_crashreporter 0 +Version: 88.0.1 +Release: 1%{?pre_tag}%{?dist} +URL: https://www.mozilla.org/firefox/ +License: MPLv1.1 or GPLv2+ or LGPLv2+ +Source0: https://archive.mozilla.org/pub/firefox/releases/%{version}%{?pre_version}/source/firefox-%{version}%{?pre_version}.source.tar.xz +%if %{with langpacks} +Source1: firefox-langpacks-%{version}%{?pre_version}-20210510.tar.xz +%endif +Source2: cbindgen-vendor.tar.xz +Source10: firefox-mozconfig +Source12: firefox-redhat-default-prefs.js +Source20: firefox.desktop +Source21: firefox.sh.in +Source23: firefox.1 +Source24: mozilla-api-key +Source25: firefox-symbolic.svg +Source26: distribution.ini +Source27: google-api-key +Source28: firefox-wayland.sh.in +Source29: firefox-wayland.desktop +Source30: firefox-x11.sh.in +Source31: firefox-x11.desktop +Source32: node-stdout-nonblocking-wrapper +Source33: firefox.appdata.xml.in +Source34: firefox-search-provider.ini +Source35: google-loc-api-key +%if 0 +Source37: mochitest-python.tar.gz +%endif +Source38: print_results +Source39: print-errors +Source40: run-tests-x11 +Source41: run-tests-wayland +Source42: psummary +Source43: print_failures +Source44: print-error-reftest +Source45: run-wayland-compositor + +# Build patches +Patch3: mozilla-build-arm.patch +Patch25: rhbz-1219542-s390-build.patch +Patch32: build-rust-ppc64le.patch +Patch35: build-ppc-jit.patch +# Fixing missing cacheFlush when JS_CODEGEN_NONE is used (s390x) +Patch38: build-cacheFlush-missing.patch +Patch40: build-aarch64-skia.patch +Patch41: build-disable-elfhack.patch +Patch44: build-arm-libopus.patch +Patch46: firefox-nss-version.patch +Patch47: fedora-shebang-build.patch +Patch48: build-arm-wasm.patch +Patch49: build-arm-libaom.patch +Patch53: firefox-gcc-build.patch +# This should be fixed in Firefox 83 +Patch54: mozilla-1669639.patch +Patch55: firefox-testing.patch +Patch57: firefox-disable-ffvpx-with-vapi.patch +Patch58: firefox-crashreporter-build.patch + +# Test patches +# Generate without context by +# GENDIFF_DIFF_ARGS=-U0 gendiff firefox-xxxx .firefox-tests-xpcshell +# GENDIFF_DIFF_ARGS=-U0 gendiff firefox-xxxx .firefox-tests-reftest +Patch100: firefox-tests-xpcshell.patch +Patch101: firefox-tests-reftest.patch +Patch102: firefox-tests-xpcshell-freeze.patch + +# Fedora specific patches +Patch215: firefox-enable-addons.patch +Patch219: rhbz-1173156.patch +Patch221: firefox-fedora-ua.patch +Patch224: mozilla-1170092.patch +#ARM run-time patch +Patch226: rhbz-1354671.patch +Patch228: disable-openh264-download.patch +Patch229: firefox-nss-addon-hack.patch + +# Upstream patches +Patch402: mozilla-1196777.patch +Patch407: mozilla-1667096.patch +Patch408: mozilla-1663844.patch +Patch415: mozilla-1670333.patch +Patch416: mozilla-1693472.patch +Patch417: mozilla-1702606.patch +Patch418: mozilla-1703657.patch +Patch419: mozilla-1703763.patch +Patch420: mochitest-wayland-workaround.patch +Patch421: mozilla-1580595.patch +Patch422: mozilla-1705048.patch + +# PGO/LTO patches +Patch600: pgo.patch +Patch602: mozilla-1516803.patch + +%if %{?system_nss} +BuildRequires: pkgconfig(nspr) >= %{nspr_version} +BuildRequires: pkgconfig(nss) >= %{nss_version} +BuildRequires: nss-static >= %{nss_version} +%endif +BuildRequires: pkgconfig(libpng) +%if %{?system_jpeg} +BuildRequires: libjpeg-devel +%endif +BuildRequires: zip +BuildRequires: jack-audio-connection-kit-devel +BuildRequires: alsa-lib-devel +BuildRequires: bzip2-devel +BuildRequires: pkgconfig(zlib) +BuildRequires: pkgconfig(gtk+-3.0) +BuildRequires: pkgconfig(gtk+-2.0) +BuildRequires: pkgconfig(krb5) +BuildRequires: pkgconfig(pango) +BuildRequires: pkgconfig(freetype2) >= %{freetype_version} +BuildRequires: pkgconfig(xt) +BuildRequires: pkgconfig(xrender) +BuildRequires: pkgconfig(libstartup-notification-1.0) +BuildRequires: pkgconfig(libnotify) >= %{libnotify_version} +BuildRequires: pkgconfig(dri) +BuildRequires: pkgconfig(libcurl) +BuildRequires: dbus-glib-devel +%if %{?system_libvpx} +BuildRequires: libvpx-devel >= %{libvpx_version} +%endif +BuildRequires: autoconf213 +BuildRequires: pkgconfig(libpulse) +BuildRequires: yasm +BuildRequires: llvm +BuildRequires: llvm-devel +BuildRequires: clang +BuildRequires: clang-libs +%if %{build_with_clang} +BuildRequires: lld +%endif + +BuildRequires: pipewire-devel + +%if !0%{?use_bundled_cbindgen} +BuildRequires: cbindgen +%endif +BuildRequires: nodejs +BuildRequires: nasm >= 1.13 +BuildRequires: libappstream-glib + +%if 0%{?big_endian} +BuildRequires: icu +%endif + +Requires: mozilla-filesystem +Recommends: mozilla-openh264 >= 2.1.1 +Recommends: libva +Requires: p11-kit-trust +Requires: pciutils-libs +%if %{?system_nss} +Requires: nspr >= %{nspr_build_version} +Requires: nss >= %{nss_build_version} +%endif +BuildRequires: python3-devel +BuildRequires: python3-setuptools +%if !0%{?flatpak} +Requires: u2f-hidraw-policy +%endif + +BuildRequires: desktop-file-utils +%if !0%{?flatpak} +BuildRequires: system-bookmarks +%endif +%if %{?system_ffi} +BuildRequires: pkgconfig(libffi) +%endif + +%if 0%{?use_xvfb} +BuildRequires: xorg-x11-server-Xvfb +%endif +BuildRequires: rust +BuildRequires: cargo +BuildRequires: clang-devel +%if %{build_with_asan} +BuildRequires: libasan +BuildRequires: libasan-static +%endif +BuildRequires: perl-interpreter +BuildRequires: fdk-aac-free-devel +%if 0%{?test_on_wayland} +BuildRequires: mutter +BuildRequires: gsettings-desktop-schemas +BuildRequires: gnome-settings-daemon +BuildRequires: mesa-dri-drivers +%endif +%if 0%{?run_firefox_tests} +BuildRequires: procps-ng +BuildRequires: nss-tools +BuildRequires: python2.7 +BuildRequires: dejavu-sans-mono-fonts +BuildRequires: dejavu-sans-fonts +BuildRequires: dejavu-serif-fonts +BuildRequires: mesa-dri-drivers +BuildRequires: dbus-x11 +BuildRequires: gnome-keyring +# ---------------------------------------- +BuildRequires: liberation-fonts-common +BuildRequires: liberation-mono-fonts +BuildRequires: liberation-sans-fonts +BuildRequires: liberation-serif-fonts +# ---------------------------------- +# Missing on f32 +%if 0%{?fedora} > 33 +BuildRequires: google-carlito-fonts +%endif +BuildRequires: google-droid-sans-fonts +BuildRequires: google-noto-fonts-common +BuildRequires: google-noto-cjk-fonts-common +BuildRequires: google-noto-sans-cjk-ttc-fonts +BuildRequires: google-noto-sans-gurmukhi-fonts +BuildRequires: google-noto-sans-fonts +BuildRequires: google-noto-emoji-color-fonts +BuildRequires: google-noto-sans-sinhala-vf-fonts +# ----------------------------------- +BuildRequires: thai-scalable-fonts-common +BuildRequires: thai-scalable-waree-fonts +BuildRequires: khmeros-base-fonts +BuildRequires: jomolhari-fonts +# ---------------------------------- +BuildRequires: lohit-tamil-fonts +BuildRequires: lohit-telugu-fonts +# ---------------------------------- +BuildRequires: paktype-naskh-basic-fonts +# faild to build in Koji / f32 +%if 0%{?fedora} > 33 +BuildRequires: pt-sans-fonts +%endif +BuildRequires: smc-meera-fonts +BuildRequires: stix-fonts +BuildRequires: abattis-cantarell-fonts +BuildRequires: xorg-x11-fonts-ISO8859-1-100dpi +BuildRequires: xorg-x11-fonts-misc +%endif +BuildRequires: make + +Obsoletes: mozilla <= 37:1.7.13 +Provides: webclient + +Source100: librewolf-branding.tgz +Source101: librewolf.cfg +Patch900: armhf-reduce-linker-memory-use.patch +Patch901: fix-armhf-webrtc-build.patch +Patch902: webrtc-fix-compiler-flags-for-armhf.patch +Patch903: sandbox-update-arm-syscall-numbers.patch +Patch904: remove_addons.patch +Patch905: megabar.patch +Patch906: reduce-rust-debuginfo.patch +Patch907: mozilla-vpn-ad.patch +Patch908: context-menu.patch +%description +Mozilla Firefox is an open-source web browser, designed for standards +compliance, performance and portability. + +%package x11 +Summary: LibreWolf X11 launcher. +Requires: %{name} +%description x11 +The librewolf-x11 package contains launcher and desktop file +to run LibreWolf explicitly on X11. +%files x11 +%{_bindir}/librewolf-x11 +%{_datadir}/applications/librewolf-x11.desktop + +%package wayland +Summary: LibreWolf Wayland launcher. +Requires: %{name} +%description wayland +The librewolf-wayland package contains launcher and desktop file +to run LibreWolf explicitly on Wayland. +%files wayland +%{_bindir}/librewolf-wayland +%{_datadir}/applications/librewolf-wayland.desktop + +%if 0%{?run_firefox_tests} +%global testsuite_pkg_name %{name}-testresults +%package -n %{testsuite_pkg_name} +Summary: Results of testsuite +%description -n %{testsuite_pkg_name} +This package contains results of tests executed during build. +%files -n %{testsuite_pkg_name} +/%{version}-%{release}/test_results +/%{version}-%{release}/test_summary.txt +/%{version}-%{release}/failures-* +%endif + +#--------------------------------------------------------------------- + +%prep +%setup -q -n %{tarballdir} + +# Build patches, can't change backup suffix from default because during build +# there is a compare of config and js/config directories and .orig suffix is +# ignored during this compare. + +%ifarch s390 +%patch25 -p1 -b .rhbz-1219542-s390 +%endif +%patch40 -p1 -b .aarch64-skia +%if 0%{?disable_elfhack} +%patch41 -p1 -b .disable-elfhack +%endif +%patch3 -p1 -b .arm +%patch44 -p1 -b .build-arm-libopus +#%patch46 -p1 -b .nss-version +%patch47 -p1 -b .fedora-shebang +%patch48 -p1 -b .build-arm-wasm +%patch49 -p1 -b .build-arm-libaom +%patch53 -p1 -b .firefox-gcc-build +%patch54 -p1 -b .1669639 +%patch55 -p1 -b .testing +%patch57 -p1 -b .ffvpx-with-vapi +%patch58 -p1 -b .firefox-crashreporter-build + +# Test patches +%patch100 -p1 -b .firefox-tests-xpcshell +%patch101 -p1 -b .firefox-tests-reftest +%patch102 -p1 -b .firefox-tests-xpcshell-freeze + +# Fedora patches +%patch215 -p1 -b .addons +%patch219 -p1 -b .rhbz-1173156 +%patch221 -p1 -b .fedora-ua +%patch224 -p1 -b .1170092 +#ARM run-time patch +%ifarch aarch64 +%patch226 -p1 -b .1354671 +%endif +%patch228 -p1 -b .disable-openh264-download +%patch229 -p1 -b .firefox-nss-addon-hack + +%patch402 -p1 -b .1196777 +%patch407 -p1 -b .1667096 +%patch408 -p1 -b .1663844 +%patch415 -p1 -b .1670333 +%patch416 -p1 -b .1693472 +%patch417 -p1 -b .1702606 +%patch418 -p1 -b .1703657 +%patch419 -p1 -b .1703763 +%patch420 -p1 -b .mochitest-wayland-workaround +%patch421 -p1 -b .1580595 +%patch422 -p1 -b .1705048 + +# PGO patches +%if %{build_with_pgo} +%if !%{build_with_clang} +%patch600 -p1 -b .pgo +%patch602 -p1 -b .1516803 +%endif +%endif + +%patch900 -p1 +%patch901 -p1 +%patch902 -p1 +%patch903 -p1 +%patch904 -p1 +%patch905 -p1 +%patch906 -p1 +%patch907 -p1 +%patch908 -p1 +sed -i '/"pocket"/d' browser/components/moz.build +sed -i "/SaveToPocket\.init/d" browser/components/BrowserGlue.jsm +sed -i -r -e '/organizationalUnit.{0,5}=.{0,5}Mozilla/{N;N;N;d}' toolkit/mozapps/extensions/internal/XPIInstall.jsm +sed -i -r -e '/enterprise_only/s#true#false#g;' browser/components/enterprisepolicies/schemas/policies-schema.json +_settings_services_sed='s#firefox.settings.services.mozilla.com#f.s.s.m.c.qjz9zk#g' +sed -e "${_settings_services_sed}" -i browser/components/newtab/data/content/activity-stream.bundle.js +sed -e "${_settings_services_sed}" -i modules/libpref/init/all.js +sed -e "${_settings_services_sed}" -i services/settings/Utils.jsm +sed -e "${_settings_services_sed}" -i toolkit/components/search/SearchUtils.jsm +( cd browser/branding ; tar -zxf %{SOURCE100} ) +%{__rm} -f .mozconfig +%{__cp} %{SOURCE10} .mozconfig +echo "ac_add_options --enable-default-toolkit=cairo-gtk3-wayland" >> .mozconfig +%if %{official_branding} +echo "ac_add_options --enable-official-branding" >> .mozconfig +%endif +%{__cp} %{SOURCE24} mozilla-api-key +%{__cp} %{SOURCE27} google-api-key +%{__cp} %{SOURCE35} google-loc-api-key + +echo "ac_add_options --prefix=\"%{_prefix}\"" >> .mozconfig +echo "ac_add_options --libdir=\"%{_libdir}\"" >> .mozconfig + +%if %{?system_nss} +echo "ac_add_options --with-system-nspr" >> .mozconfig +echo "ac_add_options --with-system-nss" >> .mozconfig +%else +echo "ac_add_options --without-system-nspr" >> .mozconfig +echo "ac_add_options --without-system-nss" >> .mozconfig +%endif + +%if %{?system_ffi} +echo "ac_add_options --enable-system-ffi" >> .mozconfig +%endif + +%ifarch %{arm} +echo "ac_add_options --disable-elf-hack" >> .mozconfig +%endif + +%if %{?debug_build} +echo "ac_add_options --disable-debug" >> .mozconfig +echo "ac_add_options --disable-optimize" >> .mozconfig +%else +%global optimize_flags "none" +%ifarch ppc64le aarch64 +%global optimize_flags "-g -O2" +%endif +%if %{optimize_flags} != "none" +echo 'ac_add_options --enable-optimize=%{?optimize_flags}' >> .mozconfig +%else +echo 'ac_add_options --enable-optimize' >> .mozconfig +%endif +echo "ac_add_options --disable-debug" >> .mozconfig +%endif + +# Second arches fail to start with jemalloc enabled +%ifnarch %{ix86} x86_64 +echo "ac_add_options --disable-jemalloc" >> .mozconfig +%endif + +%if 0%{?build_tests} +echo "ac_add_options --disable-tests" >> .mozconfig +%else +echo "ac_add_options --disable-tests" >> .mozconfig +%endif + +%if !%{?system_jpeg} +echo "ac_add_options --without-system-jpeg" >> .mozconfig +%else +echo "ac_add_options --with-system-jpeg" >> .mozconfig +%endif + +%if %{?system_libvpx} +echo "ac_add_options --with-system-libvpx" >> .mozconfig +%else +echo "ac_add_options --without-system-libvpx" >> .mozconfig +%endif + +%ifarch s390 s390x +echo "ac_add_options --disable-jit" >> .mozconfig +%endif + +%if %{build_with_asan} +echo "ac_add_options --enable-address-sanitizer" >> .mozconfig +echo "ac_add_options --disable-jemalloc" >> .mozconfig +%endif + +%if !%{enable_mozilla_crashreporter} +echo "ac_add_options --disable-crashreporter" >> .mozconfig +%endif + +# api keys full path +echo "ac_add_options --with-mozilla-api-keyfile=`pwd`/mozilla-api-key" >> .mozconfig +# It seems that the api key we have is for the safe browsing only +echo "ac_add_options --with-google-location-service-api-keyfile=`pwd`/google-loc-api-key" >> .mozconfig +echo "ac_add_options --with-google-safebrowsing-api-keyfile=`pwd`/google-api-key" >> .mozconfig + +echo 'export NODEJS="%{_buildrootdir}/bin/node-stdout-nonblocking-wrapper"' >> .mozconfig + +# Remove executable bit to make brp-mangle-shebangs happy. +chmod -x third_party/rust/itertools/src/lib.rs +chmod a-x third_party/rust/gfx-backend-vulkan/src/*.rs +chmod a-x third_party/rust/gfx-hal/src/*.rs +chmod a-x third_party/rust/ash/src/extensions/ext/*.rs +chmod a-x third_party/rust/ash/src/extensions/khr/*.rs +chmod a-x third_party/rust/ash/src/extensions/nv/*.rs + +#--------------------------------------------------------------------- + +%build +# Disable LTO to work around rhbz#1883904 +%define _lto_cflags %{nil} + +%if 0%{?use_bundled_cbindgen} +mkdir -p my_rust_vendor +cd my_rust_vendor +%{__tar} xf %{SOURCE2} +mkdir -p .cargo +cat > .cargo/config < 30 +MOZ_OPT_FLAGS="$MOZ_OPT_FLAGS -fpermissive" +%endif +%if %{?hardened_build} +MOZ_OPT_FLAGS="$MOZ_OPT_FLAGS -fPIC -Wl,-z,relro -Wl,-z,now" +%endif +%if %{?debug_build} +MOZ_OPT_FLAGS=$(echo "$MOZ_OPT_FLAGS" | %{__sed} -e 's/-O2//') +%endif +%ifarch s390 +MOZ_OPT_FLAGS=$(echo "$MOZ_OPT_FLAGS" | %{__sed} -e 's/-g/-g1/') +# If MOZ_DEBUG_FLAGS is empty, firefox's build will default it to "-g" which +# overrides the -g1 from line above and breaks building on s390/arm +# (OOM when linking, rhbz#1238225) +export MOZ_DEBUG_FLAGS=" " +%endif +%ifarch %{arm} %{ix86} +MOZ_OPT_FLAGS=$(echo "$MOZ_OPT_FLAGS" | %{__sed} -e 's/-g/-g0/') +export MOZ_DEBUG_FLAGS=" " +%endif +%if !%{build_with_clang} +%ifarch s390 ppc aarch64 %{ix86} +MOZ_LINK_FLAGS="-Wl,--no-keep-memory -Wl,--reduce-memory-overheads" +%endif +%ifarch %{arm} +MOZ_LINK_FLAGS="-Wl,--no-keep-memory -Wl,--strip-debug" +echo "ac_add_options --enable-linker=gold" >> .mozconfig +%endif +%endif +%if 0%{?flatpak} +# Make sure the linker can find libraries in /app/lib64 as we don't use +# __global_ldflags that normally sets this. +MOZ_LINK_FLAGS="$MOZ_LINK_FLAGS -L%{_libdir}" +%endif +%ifarch %{arm} %{ix86} %{s390x} +export RUSTFLAGS="-Cdebuginfo=0" +%endif +%if %{build_with_asan} +MOZ_OPT_FLAGS="$MOZ_OPT_FLAGS -fsanitize=address -Dxmalloc=myxmalloc" +MOZ_LINK_FLAGS="$MOZ_LINK_FLAGS -fsanitize=address -ldl" +%endif + +# We don't wantfirefox to use CK_GCM_PARAMS_V3 in nss +MOZ_OPT_FLAGS="$MOZ_OPT_FLAGS -DNSS_PKCS11_3_0_STRICT" + +echo "export CFLAGS=\"$MOZ_OPT_FLAGS\"" >> .mozconfig +echo "export CXXFLAGS=\"$MOZ_OPT_FLAGS\"" >> .mozconfig +echo "export LDFLAGS=\"$MOZ_LINK_FLAGS\"" >> .mozconfig + +%if %{build_with_clang} +echo "export LLVM_PROFDATA=\"llvm-profdata\"" >> .mozconfig +echo "export AR=\"llvm-ar\"" >> .mozconfig +echo "export NM=\"llvm-nm\"" >> .mozconfig +echo "export RANLIB=\"llvm-ranlib\"" >> .mozconfig +echo "ac_add_options --enable-linker=lld" >> .mozconfig +%else +echo "export CC=gcc" >> .mozconfig +echo "export CXX=g++" >> .mozconfig +echo "export AR=\"gcc-ar\"" >> .mozconfig +echo "export NM=\"gcc-nm\"" >> .mozconfig +echo "export RANLIB=\"gcc-ranlib\"" >> .mozconfig +%endif +%if 0%{?build_with_pgo} +echo "ac_add_options MOZ_PGO=1" >> .mozconfig +# PGO build doesn't work with ccache +export CCACHE_DISABLE=1 +%endif + +echo "ac_add_options --enable-hardening" >> .mozconfig +echo "ac_add_options --enable-rust-simd" >> .mozconfig +echo "ac_add_options --with-app-name=librewolf" >> .mozconfig +echo "ac_add_options --with-app-basename=LibreWolf" >> .mozconfig +echo "ac_add_options --with-branding=browser/branding/librewolf" >> .mozconfig +echo "ac_add_options --with-branding=browser/branding/librewolf" >> .mozconfig +echo "ac_add_options --with-distribution-id=io.gitlab.librewolf-community" >> .mozconfig +echo "ac_add_options --with-unsigned-addon-scopes=app,system" >> .mozconfig +echo "ac_add_options --enable-alsa" >> .mozconfig +echo "ac_add_options --enable-jack" >> .mozconfig +echo "export MOZ_REQUIRE_SIGNING=0" >> .mozconfig +echo "ac_add_options --disable-updater" >> .mozconfig +echo "mk_add_options MOZ_CRASHREPORTER=0" >> .mozconfig +echo "mk_add_options MOZ_DATA_REPORTING=0" >> .mozconfig +echo "mk_add_options MOZ_SERVICES_HEALTHREPORT=0" >> .mozconfig +echo "mk_add_options MOZ_TELEMETRY_REPORTING=0" >> .mozconfig +MOZ_SMP_FLAGS=-j1 +# On x86_64 architectures, Mozilla can build up to 4 jobs at once in parallel, +# however builds tend to fail on other arches when building in parallel. +%ifarch %{ix86} s390x %{arm} aarch64 +[ -z "$RPM_BUILD_NCPUS" ] && \ + RPM_BUILD_NCPUS="`/usr/bin/getconf _NPROCESSORS_ONLN`" +[ "$RPM_BUILD_NCPUS" -ge 2 ] && MOZ_SMP_FLAGS=-j2 +%endif +%ifarch x86_64 ppc ppc64 ppc64le +[ -z "$RPM_BUILD_NCPUS" ] && \ + RPM_BUILD_NCPUS="`/usr/bin/getconf _NPROCESSORS_ONLN`" +[ "$RPM_BUILD_NCPUS" -ge 2 ] && MOZ_SMP_FLAGS=-j2 +[ "$RPM_BUILD_NCPUS" -ge 4 ] && MOZ_SMP_FLAGS=-j4 +[ "$RPM_BUILD_NCPUS" -ge 8 ] && MOZ_SMP_FLAGS=-j8 +[ "$RPM_BUILD_NCPUS" -ge 16 ] && MOZ_SMP_FLAGS=-j16 +[ "$RPM_BUILD_NCPUS" -ge 24 ] && MOZ_SMP_FLAGS=-j24 +[ "$RPM_BUILD_NCPUS" -ge 32 ] && MOZ_SMP_FLAGS=-j32 +[ "$RPM_BUILD_NCPUS" -ge 64 ] && MOZ_SMP_FLAGS=-j64 +%endif + +echo "mk_add_options MOZ_MAKE_FLAGS=\"$MOZ_SMP_FLAGS\"" >> .mozconfig +echo "mk_add_options MOZ_SERVICES_SYNC=1" >> .mozconfig +echo "export STRIP=/bin/true" >> .mozconfig +export MACH_USE_SYSTEM_PYTHON=1 + +%if %{launch_wayland_compositor} +cp %{SOURCE45} . +. ./run-wayland-compositor +%endif + +%if %{build_with_pgo} +%if %{test_on_wayland} +env | grep "WAYLAND" +MOZ_ENABLE_WAYLAND=1 ./mach build 2>&1 | cat - +%else +xvfb-run ./mach build 2>&1 | cat - +%endif +%else +./mach build 2>&1 | cat - +%endif + + +#--------------------------------------------------------------------- +%install +# run Firefox test suite +export MACH_USE_SYSTEM_PYTHON=1 +%if %{launch_wayland_compositor} +cp %{SOURCE45} . +. ./run-wayland-compositor +%endif + +%if 0%{?run_firefox_tests} +mkdir -p objdir/_virtualenvs/init_py3 +%{__cat} > objdir/_virtualenvs/init_py3/pip.conf << EOF +[global] +find-links=`pwd`/mochitest-python +no-index=true +EOF +tar xf %{SOURCE37} +cp %{SOURCE40} %{SOURCE41} %{SOURCE42} %{SOURCE38} %{SOURCE39} %{SOURCE43} %{SOURCE44} . +mkdir -p test_results +%if %{test_on_wayland} +./run-tests-wayland || true +%else +./run-tests-x11 || true +%endif +./print_results > test_summary.txt 2>&1 || true +./print_failures || true +%endif + +# set up our default bookmarks +%if 0 +%{__cp} -p %{default_bookmarks_file} objdir/dist/bin/browser/chrome/en-US/locale/browser/bookmarks.html +%endif + +DESTDIR=%{buildroot} make -C objdir/instrumented install + +%{__mkdir_p} %{buildroot}{%{_libdir},%{_bindir},%{_datadir}/applications} +_seds="s/Firefox/LibreWolf/g;s/firefox/librewolf/g;" +S20="$( basename "%{SOURCE20}" | sed -r -e ${_seds} )" +S31="$( basename "%{SOURCE31}" | sed -r -e ${_seds} )" +S29="$( basename "%{SOURCE29}" | sed -r -e ${_seds} )" +sed -r %{SOURCE20} -e ${_seds} > ${S20} +sed -r %{SOURCE31} -e ${_seds} > ${S31} +sed -r %{SOURCE29} -e ${_seds} > ${S29} + +desktop-file-install --dir %{buildroot}%{_datadir}/applications ${S20} +desktop-file-install --dir %{buildroot}%{_datadir}/applications ${S31} +desktop-file-install --dir %{buildroot}%{_datadir}/applications ${S29} + +# set up the librewolf start script +%{__rm} -rf %{buildroot}%{_bindir}/librewolf +%{__sed} -e 's,/__PREFIX__,%{_prefix},g' %{SOURCE21} > %{buildroot}%{_bindir}/librewolf +%{__sed} -i %{buildroot}%{_bindir}/librewolf \ + -e "${_seds}" \ + -e "/restorecon/{s/.mozilla\/firefox/.librewolf/;}" +%{__chmod} 755 %{buildroot}%{_bindir}/librewolf + +%if 0%{?flatpak} +sed -i -e 's|%FLATPAK_ENV_VARS%|export TMPDIR="$XDG_CACHE_HOME/tmp"|' %{buildroot}%{_bindir}/librewolf +%else +sed -i -e 's|%FLATPAK_ENV_VARS%||' %{buildroot}%{_bindir}/librewolf +%endif + +%{__sed} -e 's,/__PREFIX__,%{_prefix},g' %{SOURCE30} > %{buildroot}%{_bindir}/librewolf-x11 +%{__chmod} 755 %{buildroot}%{_bindir}/librewolf-x11 +%{__sed} -e 's,/__PREFIX__,%{_prefix},g' %{SOURCE28} > %{buildroot}%{_bindir}/librewolf-wayland +%{__chmod} 755 %{buildroot}%{_bindir}/librewolf-wayland + +%{__cp} -p %{SOURCE101} %{buildroot}/%{mozappdir}/ +%{__install} -p -D -m 644 %{SOURCE23} %{buildroot}%{_mandir}/man1/librewolf.1 + +%{__rm} -f %{buildroot}/%{mozappdir}/librewolf-config +%{__rm} -f %{buildroot}/%{mozappdir}/update-settings.ini + +for s in 16 32 48 64 128; do + %{__mkdir_p} %{buildroot}%{_datadir}/icons/hicolor/${s}x${s}/apps + %{__cp} -p browser/branding/librewolf/default${s}.png \ + %{buildroot}%{_datadir}/icons/hicolor/${s}x${s}/apps/librewolf.png +done + +# Install hight contrast icon +%{__mkdir_p} %{buildroot}%{_datadir}/icons/hicolor/symbolic/apps +%{__cp} -p %{SOURCE25} \ + %{buildroot}%{_datadir}/icons/hicolor/symbolic/apps/$( basename %{SOURCE25} | sed -r -e "${_seds}" ) + +echo > %{name}.lang +%if %{with langpacks} +# Extract langpacks, make any mods needed, repack the langpack, and install it. +%{__mkdir_p} %{buildroot}%{langpackdir} +%{__tar} xf %{SOURCE1} +for langpack in `ls firefox-langpacks/*.xpi`; do + language=`basename $langpack .xpi` + extensionID=langpack-$language@firefox.mozilla.org + %{__mkdir_p} $extensionID + unzip -qq $langpack -d $extensionID + find $extensionID -type f | xargs chmod 644 + + cd $extensionID + zip -qq -r9mX ../${extensionID}.xpi * + cd - + + %{__install} -m 644 ${extensionID}.xpi %{buildroot}%{langpackdir} + language=`echo $language | sed -e 's/-/_/g'` +%if 0%{?flatpak} + echo "%{langpackdir}/${extensionID}.xpi" >> %{name}.lang +%else + echo "%%lang($language) %{langpackdir}/${extensionID}.xpi" >> %{name}.lang +%endif +done +%{__rm} -rf firefox-langpacks + +# Install langpack workaround (see #707100, #821169) +function create_default_langpack() { +language_long=$1 +language_short=$2 +cd %{buildroot}%{langpackdir} +ln -s langpack-$language_long@firefox.mozilla.org.xpi langpack-$language_short@firefox.mozilla.org.xpi +cd - +echo "%%lang($language_short) %{langpackdir}/langpack-$language_short@firefox.mozilla.org.xpi" >> %{name}.lang +} + +# Table of fallbacks for each language +# please file a bug at bugzilla.redhat.com if the assignment is incorrect +#create_default_langpack "bn-IN" "bn" +create_default_langpack "es-AR" "es" +create_default_langpack "fy-NL" "fy" +create_default_langpack "ga-IE" "ga" +create_default_langpack "gu-IN" "gu" +create_default_langpack "hi-IN" "hi" +create_default_langpack "hy-AM" "hy" +create_default_langpack "nb-NO" "nb" +create_default_langpack "nn-NO" "nn" +create_default_langpack "pa-IN" "pa" +create_default_langpack "pt-PT" "pt" +create_default_langpack "sv-SE" "sv" +create_default_langpack "zh-TW" "zh" +%endif + +%{__mkdir_p} %{buildroot}/%{mozappdir}/browser/defaults/preferences + +# System config dir +%{__mkdir_p} %{buildroot}/%{_sysconfdir}/%{name}/pref + +# System extensions +%{__mkdir_p} %{buildroot}%{_datadir}/mozilla/extensions/%{firefox_app_id} +%{__mkdir_p} %{buildroot}%{_libdir}/mozilla/extensions/%{firefox_app_id} + +# Copy over the LICENSE +%{__install} -p -c -m 644 LICENSE %{buildroot}/%{mozappdir} + +# Use the system hunspell dictionaries +%{__rm} -rf %{buildroot}%{mozappdir}/dictionaries +ln -s %{_datadir}/myspell %{buildroot}%{mozappdir}/dictionaries + +%if 0%{?run_firefox_tests} +%{__mkdir_p} %{buildroot}/%{version}-%{release}/test_results +%{__cp} test_results/* %{buildroot}/%{version}-%{release}/test_results +%{__cp} test_summary.txt %{buildroot}/%{version}-%{release}/ +%{__cp} failures-* %{buildroot}/%{version}-%{release}/ || true +%endif + +# Default +%{__cp} %{SOURCE12} %{buildroot}%{mozappdir}/browser/defaults/preferences + +# Copy over run-mozilla.sh +%{__cp} build/unix/run-mozilla.sh %{buildroot}%{mozappdir} + +# Add distribution.ini +%{__mkdir_p} %{buildroot}%{mozappdir}/distribution +%{__cp} %{SOURCE26} %{buildroot}%{mozappdir}/distribution +cat > distribution.ini < %{buildroot}%{_datadir}/metainfo/librewolf.appdata.xml + +# Install Gnome search provider files +mkdir -p %{buildroot}%{_datadir}/gnome-shell/search-providers +%{__cp} %{SOURCE34} %{buildroot}%{_datadir}/gnome-shell/search-providers + +# Remove gtk2 support as flash plugin is no longer supported +rm -rf %{buildroot}%{mozappdir}/gtk2/ + +# Remove copied libraries to speed up build +rm -f %{buildroot}%{mozappdirdev}/sdk/lib/libmozjs.so +rm -f %{buildroot}%{mozappdirdev}/sdk/lib/libmozalloc.so +rm -f %{buildroot}%{mozappdirdev}/sdk/lib/libxul.so +#--------------------------------------------------------------------- + +# Moves defaults/preferences to browser/defaults/preferences +%pretrans -p +require 'posix' +require 'os' +if (posix.stat("%{mozappdir}/browser/defaults/preferences", "type") == "link") then + posix.unlink("%{mozappdir}/browser/defaults/preferences") + posix.mkdir("%{mozappdir}/browser/defaults/preferences") + if (posix.stat("%{mozappdir}/defaults/preferences", "type") == "directory") then + for i,filename in pairs(posix.dir("%{mozappdir}/defaults/preferences")) do + os.rename("%{mozappdir}/defaults/preferences/"..filename, "%{mozappdir}/browser/defaults/preferences/"..filename) + end + f = io.open("%{mozappdir}/defaults/preferences/README","w") + if f then + f:write("Content of this directory has been moved to %{mozappdir}/browser/defaults/preferences.") + f:close() + end + end +end + +%check +appstream-util validate-relax --nonet %{buildroot}%{_datadir}/metainfo/*.appdata.xml + +%preun +# is it a final removal? +if [ $1 -eq 0 ]; then + %{__rm} -rf %{mozappdir}/components + %{__rm} -rf %{mozappdir}/extensions + %{__rm} -rf %{mozappdir}/plugins + %{__rm} -rf %{langpackdir} +fi + +%post +update-desktop-database &> /dev/null || : +touch --no-create %{_datadir}/icons/hicolor &>/dev/null || : + +%postun +update-desktop-database &> /dev/null || : +if [ $1 -eq 0 ] ; then + touch --no-create %{_datadir}/icons/hicolor &>/dev/null + gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : +fi + +%posttrans +gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : + +%files -f %{name}.lang +%{mozappdir}/librewolf.cfg +%{_bindir}/librewolf +%{mozappdir}/librewolf +%{mozappdir}/librewolf-bin +%doc %{_mandir}/man1/* +%dir %{_sysconfdir}/%{name} +%dir %{_sysconfdir}/%{name}/* +%dir %{_datadir}/mozilla/extensions/* +%dir %{_libdir}/mozilla/extensions/* +%{_datadir}/applications/%{name}.desktop +%{_datadir}/metainfo/*.appdata.xml +%{_datadir}/gnome-shell/search-providers/*.ini +%dir %{mozappdir} +%license %{mozappdir}/LICENSE +%{mozappdir}/browser/chrome +%{mozappdir}/browser/defaults/preferences/firefox-redhat-default-prefs.js +%{mozappdir}/browser/features/*.xpi +%{mozappdir}/distribution/distribution.ini +# That's Windows only +%ghost %{mozappdir}/browser/features/aushelper@mozilla.org.xpi +%if %{with langpacks} +%dir %{langpackdir} +%endif +%{mozappdir}/browser/omni.ja +%{mozappdir}/run-mozilla.sh +%{mozappdir}/application.ini +%{mozappdir}/pingsender +%exclude %{mozappdir}/removed-files +%{_datadir}/icons/hicolor/16x16/apps/librewolf.png +%{_datadir}/icons/hicolor/64x64/apps/librewolf.png +%{_datadir}/icons/hicolor/128x128/apps/librewolf.png +%{_datadir}/icons/hicolor/32x32/apps/librewolf.png +%{_datadir}/icons/hicolor/48x48/apps/librewolf.png +%{_datadir}/icons/hicolor/symbolic/apps/librewolf-symbolic.svg +%if %{enable_mozilla_crashreporter} +%{mozappdir}/crashreporter +%{mozappdir}/crashreporter.ini +%{mozappdir}/minidump-analyzer +%{mozappdir}/Throbber-small.gif +%{mozappdir}/browser/crashreporter-override.ini +%endif +%{mozappdir}/*.so +%{mozappdir}/defaults/pref/channel-prefs.js +%{mozappdir}/dependentlibs.list +%{mozappdir}/dictionaries +%{mozappdir}/omni.ja +%{mozappdir}/platform.ini +%{mozappdir}/plugin-container +%{mozappdir}/gmp-clearkey +%{mozappdir}/fonts/TwemojiMozilla.ttf +%if !%{?system_nss} +%exclude %{mozappdir}/libnssckbi.so +%endif +%if %{build_with_asan} +%{mozappdir}/llvm-symbolizer +%endif + +#--------------------------------------------------------------------- + +%changelog +* Mon May 24 2021 B. Stack - 88.0.1-1 +- Fork to librewolf release. + +* Mon May 10 2021 Martin Stransky - 88.0.1-1 +- Updated to latest upstream (88.0.1) + +* Tue May 4 2021 Martin Stransky - 88.0-8 +- Added fix for mozbz#1705048. + +* Fri Apr 30 2021 Martin Stransky - 88.0-7 +- Added pciutils-libs req (rhbz#1955338) +- Enabled Wayland on KDE (rhbz#1922608) + +* Tue Apr 27 2021 Martin Stransky - 88.0-6 +- Test fix. + +* Fri Apr 23 2021 Martin Stransky - 88.0-5 +- Added fix for mozbz#1580595 - mouse pointer lock. +- Another test update. + +* Thu Apr 22 2021 Martin Stransky - 88.0-4 +- Run with mochitest test suite. + +* Thu Apr 22 2021 Martin Stransky - 88.0-3 +- Build with crashreporter enabled. + +* Wed Apr 21 2021 Martin Stransky - 88.0-2 +- Added clipboard fix mzbz#1703763. + +* Mon Apr 19 2021 Martin Stransky - 88.0-1 +- Update to 88.0 + +* Mon Apr 12 2021 Martin Stransky - 87.0-12 +- Added fix for mozbz#1701089 (Widevine playback issues). + +* Tue Apr 6 2021 Martin Stransky - 87.0-11 +- Enabled xpcshell/crashtests on Wayland. + +* Sat Apr 3 2021 Martin Stransky - 87.0-10 +- Wayland testing again. + +* Thu Apr 1 2021 Martin Stransky - 87.0-9 +- Added fix for mozbz#1702606 / rhbz#1936071 +- Switched tests back to X11 due to massive failures. + +* Thu Apr 1 2021 Martin Stransky - 87.0-8 +- Run testsuite on Wayland on Fedora 33+ +- Spec cleanup + +* Wed Mar 31 2021 Martin Stransky - 87.0-7 +- Added fix for mozbz#1693472 - Wayland/KDE rendering issues. + +* Tue Mar 30 2021 Jonathan Wakely - 87.0-6 +- Rebuilt for removed libstdc++ symbol (#1937698) + +* Tue Mar 30 2021 Martin Stransky - 87.0-5 +- Reftest fix + +* Fri Mar 26 2021 Martin Stransky - 87.0-4 +- More test fixes +- Enabled ppc64le +- Disabled crashreporter on Fedora 34+ + +* Wed Mar 24 2021 Martin Stransky - 87.0-2 +- More test fixes + +* Tue Mar 23 2021 Martin Stransky - 87.0-1 +- Disabled ARM due to build failures +- Updated to 87.0 + +* Sat Mar 13 2021 Martin Stransky - 86.0.1-2 +- Enabled ARM + +* Fri Mar 12 2021 Martin Stransky - 86.0.1-1 +- Update to latest upstream (86.0.1) + +* Wed Mar 10 2021 Martin Stransky - 86.0-8 +- Temporary disable ppc64le/Fedora 35 due to + https://bugzilla.redhat.com/show_bug.cgi?id=1933742 + +* Wed Mar 3 2021 Martin Stransky - 86.0-7 +- Added fix for mozbz#1694670 + +* Mon Mar 1 2021 Martin Stransky - 86.0-6 +- Run xpcshell tests sequential +- Test fixes + +* Mon Mar 1 2021 Martin Stransky - 86.0-4 +- Enable Wayland backend only when Wayland display is set. + +* Mon Mar 1 2021 Martin Stransky - 86.0-3 +- Added icecat-78.7.1-fix_error_template_with_C_linkage.patch to + build on F34+ + +* Fri Feb 26 2021 Martin Stransky - 86.0-2 +- Built with system nss + +* Tue Feb 23 2021 Martin Stransky - 86.0-1 +- Update to 86.0 +- Disabled Wayland backend on KDE/Plasma + +* Tue Feb 23 2021 Martin Stransky - 85.0.1-2 +- Fixed some reftest run in Mock + +* Mon Feb 08 2021 Martin Stransky - 85.0.1-1 +- Updated to 85.0.1 + +* Wed Feb 03 2021 Dan Horák - 85.0-11 +- Fix parameter passing on ppc64le (mozb#1690152) + +* Tue Feb 02 2021 Kalev Lember - 85.0-10 +- Remove gtk2 support as flash plugin is no longer supported + +* Sat Jan 30 2021 Martin Stransky - 85.0-9 +- Enable WebRender on KDE/Wayland and AMD/Intel drivers. + +* Sat Jan 30 2021 Martin Stransky - 85.0-8 +- Enable Wayland backend on Fedora 34/KDE/Plasma (and other compositors) + by default (https://bugzilla.redhat.com/show_bug.cgi?id=1922608). + +* Fri Jan 29 2021 Martin Stransky - 85.0-7 +- Added clipboard fix mozbz#1631061. + +* Thu Jan 28 2021 Kalev Lember - 85.0-6 +- Make provides/requires filtering smarter/automatic (rhbz#1582116) +- Drop dbus-glib requires that are now automatically generated again + +* Thu Jan 28 2021 Martin Stransky - 85.0-5 +- Add dbus-glib requires. + +* Tue Jan 26 2021 Martin Stransky - 85.0-4 +- Added fix for mozbz#1679933 - startup crash + +* Tue Jan 26 2021 Fedora Release Engineering - 85.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Wed Jan 20 2021 Martin Stransky - 85.0-2 +- Update to 85.0. + +* Wed Jan 20 2021 Jan Horak - 84.0.2-8 +- Fixing package requires/provides + +* Tue Jan 19 2021 Martin Stransky - 84.0.2-7 +- Fixed mzbz#164294 regression. + +* Fri Jan 15 2021 Martin Stransky - 84.0.2-6 +- Added WebRender fix (mozbz#1681107). + +* Thu Jan 14 2021 Martin Stransky - 84.0.2-5 +- Removed some failing tests. +- Spec file tweaks. + +* Tue Jan 12 2021 Martin Stransky - 84.0.2-4 +- Enabled LTO in Firefox build system. + +* Tue Jan 12 2021 Martin Stransky - 84.0.2-3 +- Removed failing xpcshell/reftests, test tweaks. + +* Mon Jan 11 2021 Martin Stransky - 84.0.2-2 +- Added a workaround for rhbz#1908018 + +* Wed Jan 6 2021 Martin Stransky - 84.0.2-1 +- Updated to 84.0.2 + +* Tue Jan 05 2021 Jan Horak - 84.0.1-5 +- Removing requires/provides of the bundled libraries + +* Mon Jan 4 2021 Martin Stransky - 84.0.1-4 +- Enabled tests + +* Mon Jan 4 2021 Martin Stransky - 84.0.1-3 +- Enabled armv7hl arch on rawhide + +* Wed Dec 23 2020 Martin Stransky - 84.0.1-2 +- Reverted mzbz#1631061 due to clipboard regressions +- Disabled armv7hl build on rawhide due to rhbz#1910277 +- Build with system nss on rawhide (rhbz#1908791). + +* Tue Dec 22 2020 Martin Stransky - 84.0.1-1 +- Updated to 84.0.1 + +* Sun Dec 20 2020 Miro Hrončok - 84.0-7 +- Filter out private libraries provides +- Fixes: rhbz#1908791 + +* Thu Dec 17 2020 Martin Stransky - 84.0-6 +- Disable PGO on Rawhide due to build issues +- Disable system nss on Rawhide due to rhbz#1908018 +- Enabled system nss on Fedora 33/32 + +* Wed Dec 16 2020 Martin Stransky - 84.0-5 +- Build with tests enabled + +* Wed Dec 16 2020 Martin Stransky - 84.0-4 +- Disabled LTO due to massive test failures + +* Wed Dec 16 2020 Martin Stransky - 84.0-3 +- Updated to Firefox 84 Build 3 +- Disabled system nss due to addon breakage (rhbz#1908018). + +* Wed Dec 9 2020 Martin Stransky - 83.0-15 +- Enabled tests everywhere +- Enabled crash reporter + +* Tue Dec 1 2020 Martin Stransky - 83.0-14 +- Enabled LTO + +* Tue Dec 1 2020 Martin Stransky - 83.0-13 +- Added fix for mozbz#1672139 + +* Tue Dec 1 2020 Martin Stransky - 83.0-12 +- More mochitest fixes + +* Mon Nov 30 2020 Martin Stransky - 83.0-11 +- Mochitest tweaking + +* Sat Nov 28 2020 Martin Stransky - 83.0-10 +- Added fix for mzbz#1678680 + +* Wed Nov 25 2020 Martin Stransky - 83.0-9 +- Added mochitest test files + +* Wed Nov 25 2020 Martin Stransky - 83.0-8 +- Added fix for rhbz#1900542 + +* Wed Nov 25 2020 Martin Stransky - 83.0-7 +- Export MOZ_GMP_PATH from /usr/bin/firefox script + (https://pagure.io/fedora-workstation/issue/126) + +* Tue Nov 24 2020 Martin Stransky - 83.0-6 +- Fix mochitest + +* Wed Nov 18 2020 Martin Stransky - 83.0-5 +- Build with tests enabled + +* Wed Nov 18 2020 Martin Stransky - 83.0-4 +- Enable all arches + +* Fri Nov 13 2020 Martin Stransky - 83.0-3 +- Updated to 83.0 Build 2 + +* Thu Nov 12 2020 Martin Stransky - 83.0-1 +- Updated to 83.0 +- Updated PipeWire patches from mozbz#1672944 + +* Tue Nov 10 2020 Martin Stransky - 82.0.3-2 +- Added fix for mozbz#1885133 + +* Mon Nov 9 2020 Martin Stransky - 82.0.3-1 +- Updated to 82.0.3 + +* Mon Nov 9 2020 Kalev Lember - 82.0.2-7 +- Include date in appdata release tags + +* Fri Nov 6 2020 Tomas Popela - 82.0.2-6 +- Re-enable s390x buils by backporting a change from Thunderbird + https://src.fedoraproject.org/rpms/thunderbird/c/5f0bec1b5b79e117cc469710afbfa4d008af9c29?branch=master + +* Tue Nov 3 2020 Martin Stransky - 82.0.2-5 +- Added mozilla-openh264 dependency to play H264 clips out of the box +- Updated Firefox tests + +* Tue Nov 3 2020 Martin Stransky - 82.0.2-3 +- Disabled LTO again. + +* Tue Nov 3 2020 Martin Stransky - 82.0.2-2 +- NSS debug build + +* Thu Oct 29 2020 Martin Stransky - 82.0.2-1 +- Updated to 82.0.2 +- Removed mzbz#1668771 due to rhbz#1888920 + +* Wed Oct 28 2020 Martin Stransky - 82.0.1-1 +- Updated to 82.0.1 + +* Tue Oct 27 2020 Martin Stransky - 82.0-8 +- Added fix for mozbz#1673313 + +* Tue Oct 27 2020 Martin Stransky - 82.0-7 +- Added fix for rawhide crashes (rhbz#1891234) + +* Sat Oct 24 2020 Martin Stransky - 82.0-6 +- Enable LTO + +* Tue Oct 20 2020 Martin Stransky - 82.0-5 +- Added fix for rhbz#1889742 - Typo in /usr/bin/firefox + +* Mon Oct 19 2020 Martin Stransky - 82.0-4 +- Updated openh264 patch to use keyframes from contained + for openh264 only. + +* Mon Oct 19 2020 Martin Stransky - 82.0-3 +- Added ELN build fixes + +* Thu Oct 15 2020 Martin Stransky - 82.0-2 +- Updated SELinux relabel setup (rhbz#1731371) + +* Thu Oct 15 2020 Martin Stransky - 82.0-1 +- Updated to 82.0 Build 2 + +* Thu Oct 15 2020 Martin Stransky - 81.0.2-3 +- Added experimental openh264 seek patch (mzbz#1670333) + +* Mon Oct 12 2020 Martin Stransky - 81.0.2-2 +- Added a partial fox for rhbz#1886722 + +* Mon Oct 12 2020 Martin Stransky - 81.0.2-1 +- Updated to latest upstream - 81.0.2 + +* Thu Oct 8 2020 Martin Stransky - 81.0.1-9 +- Added an updated fix for mozbz#1656727 + +* Thu Oct 8 2020 Martin Stransky - 81.0.1-8 +- Added fixes for mozbz#1634404, mozbz#1669495 + +* Thu Oct 8 2020 Martin Stransky - 81.0.1-7 +- Removed mozbz#1656727 as it causes a regression rhbz#1886243 + +* Wed Oct 7 2020 Martin Stransky - 81.0.1-6 +- PGO patch update +- Added fix for mzbz#1669442 (LTO builds) + +* Mon Oct 5 2020 Martin Stransky - 81.0.1-5 +- Added fix for mozbz#1656727 + +* Fri Oct 2 2020 Martin Stransky - 81.0.1-4 +- Added fix for mozbz#1668771 + +* Thu Oct 1 2020 Martin Stransky - 81.0.1-3 +- Added fix for mozbz#1661192 + +* Thu Oct 1 2020 Martin Stransky - 81.0.1-2 +- Added fix for mozbz#1640567 +- Enable PGO + +* Wed Sep 30 2020 Martin Stransky - 81.0.1-1 +- Updated to 81.0.1 + +* Wed Sep 30 2020 Martin Stransky - 81.0-9 +- Disabled openh264 download +- Removed fdk-aac-free dependency (rhbz#1883672) +- Enabled LTO + +* Sat Sep 26 2020 Dan Horák - 81.0-8 +- Re-enable builds for ppc64le + +* Fri Sep 25 2020 Martin Stransky - 81.0-7 +- Added openh264 fixes + +* Wed Sep 23 2020 Martin Stransky - 81.0-6 +- Added fix for rhbz#1731371 + +* Tue Sep 22 2020 Kalev Lember - 81.0-5 +- Re-enable builds for armv7hl and aarch64 architectures + +* Tue Sep 22 2020 Kalev Lember - 81.0-4 +- Disable LTO to work around firefox build failing in F33+ + +* Mon Sep 21 2020 Martin Stransky - 81.0-3 +- Updated to 81.0 Build 2 +- Updated firefox-disable-ffvpx-with-vapi patch +- Deleted old changelog entries + +* Thu Sep 17 2020 Martin Stransky - 81.0-2 +- Added upstream patches mzbz#1665324 mozbz#1665329 +- Updated requested nss version to 3.56 + +* Tue Sep 15 2020 Martin Stransky - 81.0-1 +- Updated to 81.0 + +* Thu Sep 10 2020 Martin Stransky - 80.0.1-3 +- Test build for all arches. + +* Fri Sep 4 2020 Martin Stransky - 80.0.1-2 +- Added patch for mozbz#1875469 + +* Tue Sep 1 2020 Martin Stransky - 80.0.1-1 +- Updated to 80.0.1 + +* Tue Aug 18 2020 Martin Stransky - 80.0-1 +- Updated to 80.0 Build 2 +- Go back to gcc +- Disabled WebGL dmabuf backend due to reported errors + (mzbz#1655323, mozbz#1656505). + +* Tue Aug 18 2020 Martin Stransky - 79.0-6 +- Enabled pgo +- Build with clang + +* Tue Aug 4 2020 Martin Stransky - 79.0-5 +- Added upstream fix for mozbz#1656436. + +* Mon Aug 3 2020 Martin Stransky - 79.0-4 +- Updated fix for mozbz#1645671 + +* Thu Jul 30 2020 Martin Stransky - 79.0-3 +- Added VA-API fix for mozbz#1645671 + +* Wed Jul 29 2020 Martin Stransky - 79.0-2 +- Try to enable armv7hl again. +- Disabled ppc64le due to cargo crash (rhbz#1862012). + +* Mon Jul 27 2020 Martin Stransky - 79.0-1 +- Update to 79.0 +- Disabled PGO due to rhbz#1849165 (gcc internal error). + +* Mon Jul 27 2020 Fedora Release Engineering - 78.0.2-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Thu Jul 23 2020 Frantisek Zatloukal - 78.0-4 +- Use python3 instead of python2 for build + +* Tue Jul 21 2020 Martin Stransky - 78.0-3 +- Added fix for mozbz#1651701/rhbz#1855730 + +* Fri Jul 10 2020 Jan Horak - 78.0.2-2 +- Fixing clang build - linker setup + +* Thu Jul 09 2020 Jan Horak - 78.0.2-1 +- Update to 78.0.2 build2 + +* Wed Jul 01 2020 Jan Horak - 78.0.1-1 +- Update to 78.0.1 build1 + +* Wed Jul 1 2020 Martin Stransky - 78.0-2 +- Add 'Open the Profile Manager' desktop file entry + +* Mon Jun 29 2020 Jan Horak - 78.0-1 +- Update to 78.0 build2 + +* Tue Jun 23 2020 Martin Stransky - 77.0.1-3 +- Build with PGO/LTO again. + +* Wed Jun 03 2020 Jan Horak - 77.0.1-2 +- Update to 77.0.1 build1 + +* Wed Jun 03 2020 Jan Horak - 77.0.1-1 +- Fixing pipewire patch +- New upstream version (77.0.1) + +* Tue Jun 2 2020 Martin Stransky - 77.0-2 +- Rebuild with updated langpacks (rhbz#1843028). + +* Fri May 29 2020 Martin Stransky - 77.0-1 +- Updated to Firefox 77.0 + +* Mon May 25 2020 Martin Stransky - 76.0.1-7 +- Added fix for mozbz#1632456 + +* Mon May 25 2020 Martin Stransky - 76.0.1-6 +- Added fix for mozbz#1634213 + +* Mon May 25 2020 Martin Stransky - 76.0.1-5 +- Added fix for mozbz#1619882 - video flickering when va-api is used. + +* Thu May 21 2020 Jan Grulich - 76.0.1-4 +- Add support for PipeWire 0.3 + +* Wed May 20 2020 Peter Robinson - 76.0.1-3 +- Build aarch64 again so aarch64 users get updates + +* Wed May 13 2020 Martin Stransky - 76.0.1-2 +- Added extra va-api frames to vp8/9 decoder. + +* Fri May 8 2020 Martin Stransky - 76.0.1-1 +- Updated to 76.0.1 + +* Thu May 7 2020 Martin Stransky - 76.0-3 +- Disable ffvpx when va-api is enabled. + +* Tue May 05 2020 Jan Horak - 76.0-2 +- Don't use google safe browsing api key for the geolocation + +* Sun May 3 2020 Martin Stransky - 76.0-1 +- Updated to 76.0 + +* Thu Apr 23 2020 Martin Stransky - 75.0-3 +- Added fix for mozilla bug #1527976 (browser D&D) + +* Tue Apr 14 2020 Jan Horak - 75.0-2 +- Removed gconf-2.0 build requirement + +* Mon Apr 06 2020 Martin Stransky - 75.0-1 +- Updated to 75.0 + +* Mon Apr 06 2020 Martin Stransky - 74.0.1-3 +- Added fix for mozbz#1627469 + +* Mon Apr 06 2020 Jan Horak - 74.0.1-2 +- Fixing pipewire patch + +* Sat Apr 4 2020 Martin Stransky - 74.0.1-1 +- Updated to latest upstream +- Added fix for mozbz#1624745 + +* Wed Apr 1 2020 Martin Stransky - 74.0-14 +- Added fixes to gnome shell search provider + +* Tue Mar 31 2020 Jan Horak - 74.0-13 +- Allow addons sideload to fix missing langpacks issues + +* Thu Mar 19 2020 Martin Stransky - 74.0-12 +- Added fix for rhbz#1814850 by Daniel Rusek + +* Tue Mar 17 2020 Martin Stransky - 74.0-11 +- Added fix for mozbz#1623106 + +* Tue Mar 17 2020 Martin Stransky - 74.0-9 +- Added fix for mozbz#1623060 + +* Tue Mar 17 2020 Jan Grulich - 74-0-8 +- Add support for window sharing + +* Mon Mar 16 2020 Martin Stransky - 74.0-7 +- Use D-Bus remote exclusively for both X11 and Wayland backends + when WAYLAND_DISPLAY is present. + +* Fri Mar 13 2020 Martin Stransky - 74.0-6 +- Added fix for mozbz#1615098 + +* Thu Mar 12 2020 Martin Stransky - 74.0-5 +- Added fix for mozbz#1196777 + +* Tue Mar 10 2020 Kalev Lember - 74.0-4 +- Remove unused libIDL build dep +- Disabled arm due to build failures + +* Tue Mar 10 2020 Martin Stransky - 74.0-3 +- Update to 74.0 Build 3 + +* Mon Mar 09 2020 Martin Stransky - 74.0-2 +- Update to 74.0 Build 2 + +* Tue Mar 03 2020 Martin Stransky - 74.0-1 +- Update to 74.0 Build 1 +- Added mozbz#1609538 + +* Mon Feb 24 2020 Martin Stransky - 73.0.1-4 +- Using pipewire-0.2 as buildrequire +- Added armv7hl fixes by Gabriel Hojda + +* Mon Feb 24 2020 Martin Stransky - 73.0.1-2 +- Fixed Bug 1804787 - Some .desktop menu entries unlocalized + +* Thu Feb 20 2020 Martin Stransky - 73.0.1-1 +- Update to 73.0.1 + +* Tue Feb 11 2020 Jan Horak - 73.0-1 +- Update to 73.0 build3 + +* Tue Feb 04 2020 Kalev Lember - 72.0.2-3 +- Fix various issues with appdata, making the validation pass again +- Validate appdata during the build +- Make sure the release tag in appdata is in sync with the package version + +* Tue Jan 28 2020 Fedora Release Engineering - 72.0.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Mon Jan 20 2020 Jan Horak - 72.0.2-1 +- Update to 72.0.2 build1 + +* Wed Jan 15 2020 Jan Horak - 72.0.1-2 +- Added fix for wrong cursor offset of popup windows and bumped required nss + version + +* Wed Jan 08 2020 Jan Horak - 72.0.1-1 +- Update to 72.0.1 build1 + +* Mon Jan 06 2020 Jan Horak - 72.0-2 +- Update to 72.0 build4 + +* Fri Jan 03 2020 Jan Horak - 72.0-1 +- Update to 72.0 build3 + +* Wed Dec 18 2019 Jan Horak - 71.0-17 +- Fix for wrong intl.accept_lang when using non en-us langpack + +* Mon Dec 9 2019 Martin Stransky - 71.0-16 +- Build with asan + +* Mon Dec 9 2019 Martin Stransky - 71.0-15 +- Enabled Mozilla crash reporter +- Enabled PGO builds + +* Mon Dec 9 2019 Martin Stransky - 71.0-14 +- Updated workaround for mzbz#1601707 + +* Sat Dec 7 2019 Martin Stransky - 71.0-13 +- Built with -fno-lifetime-dse + +* Fri Dec 6 2019 Martin Stransky - 71.0-12 +- Clang test build, should fix extension breakage + +* Fri Dec 6 2019 Martin Stransky - 71.0-11 +- Added workaround for: + https://bugzilla.mozilla.org/show_bug.cgi?id=1601707 + http://gcc.gnu.org/PR92831 + +* Fri Dec 6 2019 Martin Stransky - 71.0-10 +- Remove appdata and ship metainfo only + +* Wed Dec 4 2019 Martin Stransky - 71.0-9 +- Included kiosk mode workaround (mozbz#1594738) + +* Tue Dec 3 2019 Martin Stransky - 71.0-8 +- Disabled PGO due to startup crash + +* Mon Dec 2 2019 Martin Stransky - 71.0-7 +- Updated to 71.0 Build 5 +- Updated Gnome search provider + +* Wed Nov 27 2019 Martin Stransky - 71.0-6 +- Enable Gnome search provider + +* Wed Nov 27 2019 Martin Stransky - 71.0-5 +- Added fix for mozbz#1593408 +- Temporary disable Gnome search provider + +* Tue Nov 26 2019 Martin Stransky - 71.0-2 +- Enable Gnome search provider + +* Tue Nov 26 2019 Martin Stransky - 71.0-1 +- Updated to 71.0 Build 2 + +* Tue Nov 19 2019 Jan Horak - 70.0.1-5 +- Added fixes for missing popup and overflow widget glitches + +* Mon Nov 04 2019 Jan Horak - 70.0.1-4 +- Added fix for non-scrollable popups + +* Fri Nov 1 2019 Martin Stransky - 70.0.1-1 +- Updated to 70.0.1 +- Built with system-nss (reverted 70.0-2 change). + +* Thu Oct 31 2019 Martin Stransky - 70.0-2 +- Switched to in-tree nss due to rhbz#1752303 + +* Tue Oct 15 2019 Martin Stransky - 70.0-1 +- Updated to 70.0 -- cgit