Fixed wayland tests/PGO, enable PGO on Fedora 33+
This commit is contained in:
parent
bbea15a874
commit
9869746357
32
firefox.spec
32
firefox.spec
@ -20,8 +20,7 @@
|
|||||||
%global system_nss 1
|
%global system_nss 1
|
||||||
%global build_with_clang 0
|
%global build_with_clang 0
|
||||||
%global build_with_asan 0
|
%global build_with_asan 0
|
||||||
%global test_offscreen 1
|
%global test_on_wayland 1
|
||||||
%global test_on_wayland 0
|
|
||||||
|
|
||||||
# There are still build problems on s390x, see
|
# There are still build problems on s390x, see
|
||||||
# https://koji.fedoraproject.org/koji/taskinfo?taskID=55048351
|
# https://koji.fedoraproject.org/koji/taskinfo?taskID=55048351
|
||||||
@ -79,11 +78,6 @@ ExcludeArch: armv7hl
|
|||||||
%global build_with_pgo 1
|
%global build_with_pgo 1
|
||||||
%endif
|
%endif
|
||||||
%endif
|
%endif
|
||||||
# Disable PGO on Rawhide due to
|
|
||||||
# https://bugzilla.redhat.com/show_bug.cgi?id=1922600
|
|
||||||
%if 0%{?fedora} > 33
|
|
||||||
%global build_with_pgo 0
|
|
||||||
%endif
|
|
||||||
%if 0%{?flatpak}
|
%if 0%{?flatpak}
|
||||||
%global build_with_pgo 0
|
%global build_with_pgo 0
|
||||||
%endif
|
%endif
|
||||||
@ -103,10 +97,10 @@ ExcludeArch: armv7hl
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
%global launch_wayland_compositor 0
|
%global launch_wayland_compositor 0
|
||||||
%if %{build_with_pgo} && %{test_offscreen} && %{test_on_wayland}
|
%if %{build_with_pgo} && %{test_on_wayland}
|
||||||
%global launch_wayland_compositor 1
|
%global launch_wayland_compositor 1
|
||||||
%endif
|
%endif
|
||||||
%if %{run_firefox_tests} && %{test_offscreen} && %{test_on_wayland}
|
%if %{run_firefox_tests} && %{test_on_wayland}
|
||||||
%global launch_wayland_compositor 1
|
%global launch_wayland_compositor 1
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
@ -160,7 +154,7 @@ ExcludeArch: armv7hl
|
|||||||
Summary: Mozilla Firefox Web browser
|
Summary: Mozilla Firefox Web browser
|
||||||
Name: firefox
|
Name: firefox
|
||||||
Version: 87.0
|
Version: 87.0
|
||||||
Release: 9%{?pre_tag}%{?dist}
|
Release: 10%{?pre_tag}%{?dist}
|
||||||
URL: https://www.mozilla.org/firefox/
|
URL: https://www.mozilla.org/firefox/
|
||||||
License: MPLv1.1 or GPLv2+ or LGPLv2+
|
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
|
Source0: https://archive.mozilla.org/pub/firefox/releases/%{version}%{?pre_version}/source/firefox-%{version}%{?pre_version}.source.tar.xz
|
||||||
@ -193,6 +187,7 @@ Source41: run-tests-wayland
|
|||||||
Source42: psummary
|
Source42: psummary
|
||||||
Source43: print_failures
|
Source43: print_failures
|
||||||
Source44: print-error-reftest
|
Source44: print-error-reftest
|
||||||
|
Source45: run-wayland-compositor
|
||||||
|
|
||||||
# Build patches
|
# Build patches
|
||||||
Patch3: mozilla-build-arm.patch
|
Patch3: mozilla-build-arm.patch
|
||||||
@ -744,19 +739,13 @@ export MACH_USE_SYSTEM_PYTHON=1
|
|||||||
export MACH_NO_WRITE_TIMES=1
|
export MACH_NO_WRITE_TIMES=1
|
||||||
|
|
||||||
%if %{launch_wayland_compositor}
|
%if %{launch_wayland_compositor}
|
||||||
if [ -z "$XDG_RUNTIME_DIR" ]; then
|
cp %{SOURCE45} .
|
||||||
export XDG_RUNTIME_DIR=$HOME
|
. ./run-wayland-compositor
|
||||||
fi
|
|
||||||
xvfb-run mutter --wayland --nested &
|
|
||||||
if [ -z "$WAYLAND_DISPLAY" ]; then
|
|
||||||
export WAYLAND_DISPLAY=wayland-0
|
|
||||||
else
|
|
||||||
export WAYLAND_DISPLAY=wayland-1
|
|
||||||
fi
|
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if %{build_with_pgo}
|
%if %{build_with_pgo}
|
||||||
%if %{test_on_wayland}
|
%if %{test_on_wayland}
|
||||||
|
env | grep "WAYLAND"
|
||||||
MOZ_ENABLE_WAYLAND=1 ./mach build 2>&1 | cat -
|
MOZ_ENABLE_WAYLAND=1 ./mach build 2>&1 | cat -
|
||||||
%else
|
%else
|
||||||
xvfb-run ./mach build 2>&1 | cat -
|
xvfb-run ./mach build 2>&1 | cat -
|
||||||
@ -782,7 +771,7 @@ tar xf %{SOURCE37}
|
|||||||
cp %{SOURCE40} %{SOURCE41} %{SOURCE42} %{SOURCE38} %{SOURCE39} %{SOURCE43} %{SOURCE44} .
|
cp %{SOURCE40} %{SOURCE41} %{SOURCE42} %{SOURCE38} %{SOURCE39} %{SOURCE43} %{SOURCE44} .
|
||||||
mkdir -p test_results
|
mkdir -p test_results
|
||||||
%if %{test_on_wayland}
|
%if %{test_on_wayland}
|
||||||
./run-tests-wayland %{test_offscreen} || true
|
./run-tests-wayland || true
|
||||||
%else
|
%else
|
||||||
./run-tests-x11 || true
|
./run-tests-x11 || true
|
||||||
%endif
|
%endif
|
||||||
@ -1062,6 +1051,9 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
|
|||||||
#---------------------------------------------------------------------
|
#---------------------------------------------------------------------
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Sat Apr 4 2021 Martin Stransky <stransky@redhat.com> - 87.0-10
|
||||||
|
- Wayland testing again.
|
||||||
|
|
||||||
* Thu Apr 1 2021 Martin Stransky <stransky@redhat.com> - 87.0-9
|
* Thu Apr 1 2021 Martin Stransky <stransky@redhat.com> - 87.0-9
|
||||||
- Added fix for mozbz#1702606 / rhbz#1936071
|
- Added fix for mozbz#1702606 / rhbz#1936071
|
||||||
- Switched tests back to X11 due to massive failures.
|
- Switched tests back to X11 due to massive failures.
|
||||||
|
@ -1,38 +1,26 @@
|
|||||||
#!/usr/bin/bash
|
#!/usr/bin/bash
|
||||||
# usage: run-tests-wayland offscreen [test flavour]
|
# usage: run-tests-wayland [test flavour]
|
||||||
if ! [ $1 ] ; then
|
|
||||||
echo "Missing test params!"
|
|
||||||
echo ""
|
|
||||||
echo "usage: run-tests-wayland offscreen [test_flavour]"
|
|
||||||
echo ""
|
|
||||||
echo " offscreen can be 0 or 1"
|
|
||||||
echo " test_flavour can be xpc ref moch crash"
|
|
||||||
exit
|
|
||||||
fi
|
|
||||||
|
|
||||||
set -x
|
set -x
|
||||||
OFFSCREEN_TESTING=$1
|
|
||||||
|
|
||||||
RUN_XPCSHELL_TEST=0
|
RUN_XPCSHELL_TEST=0
|
||||||
RUN_REFTEST=0
|
RUN_REFTEST=1
|
||||||
RUN_MOCHITEST=0
|
RUN_MOCHITEST=0
|
||||||
RUN_CRASHTEST=0
|
RUN_CRASHTEST=0
|
||||||
|
|
||||||
SELECTED_TEST=$2
|
while (( "$#" )); do
|
||||||
if [ "$SELECTED_TEST" = "xpc" ] ; then
|
SELECTED_TEST=$1
|
||||||
|
if [ "$SELECTED_TEST" = "xpcshell" ] ; then
|
||||||
RUN_XPCSHELL_TEST=1
|
RUN_XPCSHELL_TEST=1
|
||||||
elif [ "$SELECTED_TEST" = "ref" ] ; then
|
elif [ "$SELECTED_TEST" = "reftest" ] ; then
|
||||||
RUN_REFTEST=1
|
RUN_REFTEST=1
|
||||||
elif [ "$SELECTED_TEST" = "moch" ] ; then
|
elif [ "$SELECTED_TEST" = "mochitest" ] ; then
|
||||||
RUN_MOCHITEST=1
|
RUN_MOCHITEST=1
|
||||||
elif [ "$SELECTED_TEST" = "crash" ] ; then
|
elif [ "$SELECTED_TEST" = "crashtest" ] ; then
|
||||||
RUN_CRASHTEST=1
|
|
||||||
else
|
|
||||||
RUN_XPCSHELL_TEST=1
|
|
||||||
RUN_REFTEST=1
|
|
||||||
RUN_MOCHITEST=0
|
|
||||||
RUN_CRASHTEST=1
|
RUN_CRASHTEST=1
|
||||||
fi
|
fi
|
||||||
|
shift
|
||||||
|
done
|
||||||
|
|
||||||
MACH_USE_SYSTEM_PYTHON=1
|
MACH_USE_SYSTEM_PYTHON=1
|
||||||
MOZ_NODE_PATH=/usr/bin/node
|
MOZ_NODE_PATH=/usr/bin/node
|
||||||
@ -48,27 +36,6 @@ NCPUS="`/usr/bin/getconf _NPROCESSORS_ONLN`"
|
|||||||
|
|
||||||
export MOZ_ENABLE_WAYLAND=1
|
export MOZ_ENABLE_WAYLAND=1
|
||||||
|
|
||||||
if [ $OFFSCREEN_TESTING -ne 0 ] ; then
|
|
||||||
xvfb-run -s "-screen 0 1600x1200x24" -n 80 mutter --wayland --nested &
|
|
||||||
if [ -z "$WAYLAND_DISPLAY" ] ; then
|
|
||||||
export WAYLAND_DISPLAY=wayland-0
|
|
||||||
else
|
|
||||||
export WAYLAND_DISPLAY=wayland-1
|
|
||||||
fi
|
|
||||||
sleep 10
|
|
||||||
retry_count=0
|
|
||||||
max_retries=5
|
|
||||||
until [ $retry_count -gt $max_retries ]; do
|
|
||||||
if [ -S "$XDG_RUNTIME_DIR/$WAYLAND_DISPLAY" ]; then
|
|
||||||
retry_count=$(($max_retries + 1))
|
|
||||||
else
|
|
||||||
retry_count=$(($retry_count + 1))
|
|
||||||
echo "Waiting for Mutter, retry: $retry_count"
|
|
||||||
sleep 2
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ $RUN_XPCSHELL_TEST -ne 0 ] ; then
|
if [ $RUN_XPCSHELL_TEST -ne 0 ] ; then
|
||||||
./mach xpcshell-test 2>&1 | cat - | tee $TEST_DIR/xpcshell
|
./mach xpcshell-test 2>&1 | cat - | tee $TEST_DIR/xpcshell
|
||||||
./mach xpcshell-test --enable-webrender 2>&1 | cat - | tee $TEST_DIR/xpcshell-wr
|
./mach xpcshell-test --enable-webrender 2>&1 | cat - | tee $TEST_DIR/xpcshell-wr
|
||||||
|
47
run-wayland-compositor
Executable file
47
run-wayland-compositor
Executable file
@ -0,0 +1,47 @@
|
|||||||
|
#!/usr/bin/bash
|
||||||
|
# Run wayland compositor and set WAYLAND_DISPLAY env variable
|
||||||
|
|
||||||
|
set -x
|
||||||
|
|
||||||
|
echo export DESKTOP_SESSION=gnome > $HOME/.xsessionrc
|
||||||
|
echo export XDG_CURRENT_DESKTOP=GNOME > $HOME/.xsessionrc
|
||||||
|
echo export XDG_SESSION_TYPE=wayland >> $HOME/.xsessionrc
|
||||||
|
|
||||||
|
# Turn off the screen saver and screen locking
|
||||||
|
gsettings set org.gnome.desktop.screensaver idle-activation-enabled false
|
||||||
|
gsettings set org.gnome.desktop.screensaver lock-enabled false
|
||||||
|
gsettings set org.gnome.desktop.screensaver lock-delay 3600
|
||||||
|
|
||||||
|
# Disable the screen saver
|
||||||
|
# This starts the gnome-keyring-daemon with an unlocked login keyring. libsecret uses this to
|
||||||
|
# store secrets. Firefox uses libsecret to store a key that protects sensitive information like
|
||||||
|
# credit card numbers.
|
||||||
|
if test -z "$DBUS_SESSION_BUS_ADDRESS" ; then
|
||||||
|
# if not found, launch a new one
|
||||||
|
eval `dbus-launch --sh-syntax`
|
||||||
|
fi
|
||||||
|
eval `echo '' | /usr/bin/gnome-keyring-daemon -r -d --unlock --components=secrets`
|
||||||
|
|
||||||
|
if [ -z "$XDG_RUNTIME_DIR" ]; then
|
||||||
|
export XDG_RUNTIME_DIR=$HOME
|
||||||
|
fi
|
||||||
|
|
||||||
|
xvfb-run -s "-screen 0 1600x1200x24" -n 80 mutter --wayland --nested &
|
||||||
|
|
||||||
|
if [ -z "$WAYLAND_DISPLAY" ] ; then
|
||||||
|
export WAYLAND_DISPLAY=wayland-0
|
||||||
|
else
|
||||||
|
export WAYLAND_DISPLAY=wayland-1
|
||||||
|
fi
|
||||||
|
sleep 10
|
||||||
|
retry_count=0
|
||||||
|
max_retries=5
|
||||||
|
until [ $retry_count -gt $max_retries ]; do
|
||||||
|
if [ -S "$XDG_RUNTIME_DIR/$WAYLAND_DISPLAY" ]; then
|
||||||
|
retry_count=$(($max_retries + 1))
|
||||||
|
else
|
||||||
|
retry_count=$(($retry_count + 1))
|
||||||
|
echo "Waiting for Mutter, retry: $retry_count"
|
||||||
|
sleep 2
|
||||||
|
fi
|
||||||
|
done
|
Loading…
Reference in New Issue
Block a user