Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Newer
Older
100644 66 lines (58 sloc) 2.263 kb
30dc899 MFH: - Added --enable-gcov configure option to enable C-level code cover...
foobar authored
1
2 #
3 # LCOV
4 #
5
6 lcov: lcov-html
7
899bc2f @patrickallaert - Fixed bug #52019 (make lcov doesn't support TESTS variable anymore)
patrickallaert authored
8 lcov-test: lcov-clean-data test
30dc899 MFH: - Added --enable-gcov configure option to enable C-level code cover...
foobar authored
9
10 php_lcov.info: lcov-test
11 @echo "Generating data for $@"
12 @rm -rf lcov_data/
13 @$(mkinstalldirs) lcov_data/
14 @echo
ba259f6 fix race condition in find (it was finding the copied files over and ove...
Nuno Lopes authored
15 -@files=`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` ;\
16 for x in $$files; do \
30dc899 MFH: - Added --enable-gcov configure option to enable C-level code cover...
foobar authored
17 echo -n . ;\
b01f5b3 Fixed gcov for generated files
Ilia Alshanetsky authored
18 y=`echo $$x | sed -e 's!\.libs/!!'`; \
30dc899 MFH: - Added --enable-gcov configure option to enable C-level code cover...
foobar authored
19 dir=lcov_data/`dirname $$x`; \
20 test -d "$$dir" || $(mkinstalldirs) "$$dir"; \
b01f5b3 Fixed gcov for generated files
Ilia Alshanetsky authored
21 if test -f "$(top_srcdir)/$$y.c"; then \
22 ln -f -s $(top_srcdir)/$$y.c lcov_data/$$y.c; \
30dc899 MFH: - Added --enable-gcov configure option to enable C-level code cover...
foobar authored
23 fi; \
50cc487 @rlerdorf MFH: Patch from Nuno
rlerdorf authored
24 if test -f "$(top_srcdir)/$$y.h"; then \
25 ln -f -s $(top_srcdir)/$$y.h lcov_data/$$y.h; \
26 fi; \
b01f5b3 Fixed gcov for generated files
Ilia Alshanetsky authored
27 if test -f "$(top_srcdir)/$$y.re"; then \
28 ln -f -s $(top_srcdir)/$$y.re lcov_data/$$y.re; \
30dc899 MFH: - Added --enable-gcov configure option to enable C-level code cover...
foobar authored
29 fi; \
b01f5b3 Fixed gcov for generated files
Ilia Alshanetsky authored
30 if test -f "$(top_srcdir)/$$y.y"; then \
31 ln -f -s $(top_srcdir)/$$y.y lcov_data/$$y.y; \
de8052a MFH
foobar authored
32 fi; \
b01f5b3 Fixed gcov for generated files
Ilia Alshanetsky authored
33 if test -f "$(top_srcdir)/$$y.l"; then \
34 ln -f -s $(top_srcdir)/$$y.l lcov_data/$$y.l; \
de8052a MFH
foobar authored
35 fi; \
618e623 fix lcov processing with gcc 4.1 (some .h files were not copied)
Nuno Lopes authored
36 if test -f "$(top_srcdir)/$$y"; then \
37 ln -f -s $(top_srcdir)/$$y lcov_data/$$y; \
38 fi; \
b01f5b3 Fixed gcov for generated files
Ilia Alshanetsky authored
39 if test -f "$(top_builddir)/$$y.c"; then \
40 ln -f -s $(top_builddir)/$$y.c lcov_data/$$y.c; \
30dc899 MFH: - Added --enable-gcov configure option to enable C-level code cover...
foobar authored
41 fi; \
6abf54a Avoid gcov conflicts on non-unique filenames
Ilia Alshanetsky authored
42 test -f "$$x.gcno" && cp $$x.gcno lcov_data/$$y.gcno ; \
43 test -f "$$x.gcda" && cp $$x.gcda lcov_data/$$y.gcda ; \
44 test -f "$$x.da" && cp $$x.da lcov_data/$$y.da ; \
45 test -f "$$x.bb" && cp $$x.bb lcov_data/$$y.bb ; \
46 test -f "$$x.bbg" && cp $$x.bbg lcov_data/$$y.bbg ; \
30dc899 MFH: - Added --enable-gcov configure option to enable C-level code cover...
foobar authored
47 done
eedb2b6 Daniel Convissor wants to test ext/date/lib, so enable code coverage dat...
Nuno Lopes authored
48 for dir in ext/bcmath/libbcmath ext/fileinfo/libmagic ext/gd/libgd ext/mbstring/libmbfl ext/mbstring/oniguruma ext/pcre/pcrelib ext/pdo_sqlite/libsqlite ext/sqlite/libsqlite ext/sqlite3/libsqlite ext/xmlrpc/libxmlrpc ext/zip/lib; do \
a487c8b - MFH Exclude bundled libs from gcov processing
Marcus Boerger authored
49 test -d lcov_data/$$dir && rm -rf lcov_data/$$dir ; \
50 done
30dc899 MFH: - Added --enable-gcov configure option to enable C-level code cover...
foobar authored
51 @echo
52 @echo "Generating $@"
25670c5 Final fix for gcov generation.
Ilia Alshanetsky authored
53 @$(LTP) --directory lcov_data/ --capture --base-directory=lcov_data --output-file $@
30dc899 MFH: - Added --enable-gcov configure option to enable C-level code cover...
foobar authored
54
55 lcov-html: php_lcov.info
56 @echo "Generating lcov HTML"
17ff2f4 remove --show-details from lcov's genhtml, as currently we don't separat...
Nuno Lopes authored
57 @$(LTP_GENHTML) --legend --output-directory lcov_html/ --title "PHP Code Coverage" php_lcov.info
30dc899 MFH: - Added --enable-gcov configure option to enable C-level code cover...
foobar authored
58
59 lcov-clean:
60 rm -f php_lcov.info
61 rm -rf lcov_data/
62 rm -rf lcov_html/
63
899bc2f @patrickallaert - Fixed bug #52019 (make lcov doesn't support TESTS variable anymore)
patrickallaert authored
64 lcov-clean-data:
65 @find . -name \*.gcda -o -name \*.da -o -name \*.bbg? | xargs rm -f
Something went wrong with that request. Please try again.