diff --git a/test/Makefile.am b/test/Makefile.am index 96cf4e93b..4d3930145 100644 --- a/test/Makefile.am +++ b/test/Makefile.am @@ -126,7 +126,7 @@ cairo_test_trace_DEPENDENCIES = \ endif BUILT_SOURCES += cairo-test-constructors.c -EXTRA_DIST += $(BUILT_SOURCES) $(noinst_SCRIPTS) COPYING make-cairo-test-constructors.sh +EXTRA_DIST += $(BUILT_SOURCES) $(noinst_SCRIPTS) COPYING make-cairo-test-constructors.sh run-cairo-test-suite.sh CLEANFILES += $(BUILT_SOURCES) # All tests which have a reference image go here. diff --git a/test/run-cairo-test-suite.sh b/test/run-cairo-test-suite.sh new file mode 100755 index 000000000..567d2b14b --- /dev/null +++ b/test/run-cairo-test-suite.sh @@ -0,0 +1,18 @@ +#!/bin/bash + +set -m + +if `which gnome-screensaver-command`; then + gnome-screensaver-command -i -n "cairo-test-suite" -r "Cairo needs to read back from the screen in order to test rendering to xlib" & + pid=$! + + restore_screensaver() { kill $pid; } +else + restore_screensaver() { :; } +fi + +trap cleanup SIGINT SIGTERM + +./cairo-test-suite "$*" + +restore_screensaver