mirror of
https://github.com/php/php-src.git
synced 2024-11-27 20:03:40 +08:00
2970989ed9
The libbcmath, libmagic libmbfl and libxmlrpc are maintained in php-src, so we should ensure these with tests.
79 lines
2.3 KiB
Makefile
79 lines
2.3 KiB
Makefile
#
|
|
# LCOV
|
|
#
|
|
|
|
LCOV_INCLUDE="."
|
|
|
|
lcov: lcov-html
|
|
|
|
lcov-test: lcov-clean-data test
|
|
|
|
php_lcov.info: lcov-test
|
|
@echo "Generating data for $@"
|
|
@rm -rf lcov_data/
|
|
@$(mkinstalldirs) lcov_data/
|
|
@echo
|
|
-@files=`find . -name \*.gcda -o -name \*.gcno -o -name \*.da -o -name \*.c -o -name \*.h | sed -e 's/^\.\///' | sed -e 's/\.gcda//g' -e 's/\.gcno//g' -e 's/\.da//g' | $(EGREP) $(LCOV_INCLUDE) | sed -e 's/.libs/zzzz/g' | sort | sed -e 's/zzzz/.libs/g' | uniq` ;\
|
|
for x in $$files; 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; \
|
|
if test -f "$$x.gcno"; then \
|
|
cp $$x.gcno lcov_data/$$y.gcno ; \
|
|
fi; \
|
|
if test -f "$$x.gcda"; then \
|
|
cp $$x.gcda lcov_data/$$y.gcda ; \
|
|
fi; \
|
|
if test -f "$$x.da"; then \
|
|
cp $$x.da lcov_data/$$y.da ; \
|
|
fi; \
|
|
if test -f "$$x.bb"; then \
|
|
cp $$x.bb lcov_data/$$y.bb ; \
|
|
fi; \
|
|
if test -f "$$x.bbg"; then \
|
|
cp $$x.bbg lcov_data/$$y.bbg ; \
|
|
fi; \
|
|
done; \
|
|
for dir in ext/date/lib ext/fileinfo/libmagic ext/gd/libgd ext/mbstring/oniguruma ext/pcre/pcre2lib ext/zip/lib; do \
|
|
if test -d lcov_data/$$dir; then \
|
|
rm -rf lcov_data/$$dir ; \
|
|
fi; \
|
|
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/
|
|
|
|
lcov-clean-data:
|
|
@find . -name \*.gcda -o -name \*.da -o -name \*.bbg? | xargs rm -f
|