# # LCOV # lcov: lcov-html lcov-test: all @echo "Running test suite" @find . -name \*.gcda -o -name \*.da -o -name \*.bbg? | xargs rm -f -@if test ! -z "$(PHP_EXECUTABLE)" && test -x "$(PHP_EXECUTABLE)"; then \ NO_INTERACTION=1 \ TEST_PHP_EXECUTABLE=$(PHP_EXECUTABLE) \ TEST_PHP_SRCDIR=$(top_srcdir) \ CC="$(CC)" \ $(PHP_EXECUTABLE) -d 'open_basedir=' -d 'safe_mode=0' -d 'output_buffering=0' -d 'memory_limit=-1' $(top_srcdir)/run-tests.php -d 'extension_dir=modules/' -d `( . $(PHP_MODULES) ; echo extension=$$dlname)` tests/; \ elif test ! -z "$(SAPI_CLI_PATH)" && test -x "$(SAPI_CLI_PATH)"; then \ NO_INTERACTION=1 \ TEST_PHP_EXECUTABLE=$(top_builddir)/$(SAPI_CLI_PATH) \ TEST_PHP_SRCDIR=$(top_srcdir) \ CC="$(CC)" \ $(top_builddir)/$(SAPI_CLI_PATH) -d 'open_basedir=' -d 'safe_mode=0' -d 'output_buffering=0' -d 'memory_limit=-1' $(top_srcdir)/run-tests.php $(TESTS); \ else \ echo "ERROR: Cannot run tests without CLI sapi."; \ fi php_lcov.info: lcov-test @echo "Generating data for $@" @rm -rf lcov_data/ @$(mkinstalldirs) lcov_data/ @echo -@find . -name \*.gcda -o -name \*.gcno -o -name \*.da -o -name \*.h | sed -e 's/^\.\///' | sed -e 's/\.gcda//g' -e 's/\.gcno//g' -e 's/\.da//g' | uniq | while read x; do \ echo -n . ;\ y=`echo $$x | sed -e 's!\.libs/!!'`; \ dir=lcov_data/`dirname $$x`; \ test -d "$$dir" || $(mkinstalldirs) "$$dir"; \ if test -f "$(top_srcdir)/$$y.c"; then \ ln -f -s $(top_srcdir)/$$y.c lcov_data/$$y.c; \ fi; \ if test -f "$(top_srcdir)/$$y.h"; then \ ln -f -s $(top_srcdir)/$$y.h lcov_data/$$y.h; \ fi; \ if test -f "$(top_srcdir)/$$y.re"; then \ ln -f -s $(top_srcdir)/$$y.re lcov_data/$$y.re; \ fi; \ if test -f "$(top_srcdir)/$$y.y"; then \ ln -f -s $(top_srcdir)/$$y.y lcov_data/$$y.y; \ fi; \ if test -f "$(top_srcdir)/$$y.l"; then \ ln -f -s $(top_srcdir)/$$y.l lcov_data/$$y.l; \ fi; \ if test -f "$(top_srcdir)/$$y"; then \ ln -f -s $(top_srcdir)/$$y lcov_data/$$y; \ fi; \ if test -f "$(top_builddir)/$$y.c"; then \ ln -f -s $(top_builddir)/$$y.c lcov_data/$$y.c; \ fi; \ test -f "$$x.gcno" && cp $$x.gcno lcov_data/$$y.gcno ; \ test -f "$$x.gcda" && cp $$x.gcda lcov_data/$$y.gcda ; \ test -f "$$x.da" && cp $$x.da lcov_data/$$y.da ; \ test -f "$$x.bb" && cp $$x.bb lcov_data/$$y.bb ; \ test -f "$$x.bbg" && cp $$x.bbg lcov_data/$$y.bbg ; \ done @echo @echo "Generating $@" @$(LTP) --directory lcov_data/ --capture --base-directory=lcov_data --output-file $@ lcov-html: php_lcov.info @echo "Generating lcov HTML" @$(LTP_GENHTML) --legend --output-directory lcov_html/ --title "PHP Code Coverage" php_lcov.info lcov-clean: rm -f php_lcov.info rm -rf lcov_data/ rm -rf lcov_html/