build: merge all coverage exclusions into a single command and exclude more files
authorMike Blumenkrantz <zmike@osg.samsung.com>
Mon, 26 Mar 2018 16:18:18 +0000 (12:18 -0400)
committerWonki Kim <wonki_.kim@samsung.com>
Tue, 10 Apr 2018 13:25:44 +0000 (22:25 +0900)
files in the excluded directories either can only be tested with stochastic results
or testing them serves no purpose

pruning these in separate commands adds 10-20s to each coverage build

ref 28f9a5cdb36f01255a94ff8146ee915be506288f
ref T6825

Reviewed-by: Stefan Schmidt <stefan@osg.samsung.com>
Makefile.am

index 38e3b8a..6996c39 100644 (file)
@@ -471,12 +471,11 @@ lcov-baseline:
 lcov-report: lcov-baseline
        lcov --capture --compat-libtool --no-external --output-file $(abs_top_builddir)/coverage/coverage-check.info --directory $(abs_top_builddir) --config-file .lcov-config
        lcov --no-external --compat-libtool --add-tracefile $(abs_top_builddir)/coverage/coverage-baseline.info --add-tracefile $(abs_top_builddir)/coverage/coverage-check.info --output-file $(abs_top_builddir)/coverage/coverage.info --config-file .lcov-config
-       lcov --no-external --compat-libtool --remove $(abs_top_builddir)/coverage/coverage.info '*.h' --output-file $(abs_top_builddir)/coverage/coverage.cleaned.info --config-file .lcov-config
-       lcov --no-external --compat-libtool --remove $(abs_top_builddir)/coverage/coverage.cleaned.info '*/tests/*' --output-file $(abs_top_builddir)/coverage/coverage.cleaned2.info --config-file .lcov-config
-       lcov --no-external --compat-libtool --remove $(abs_top_builddir)/coverage/coverage.cleaned2.info '*NONE*' --output-file $(abs_top_builddir)/coverage/coverage.cleaned3.info --config-file .lcov-config
-       lcov --no-external --compat-libtool --remove $(abs_top_builddir)/coverage/coverage.cleaned3.info '*/doc/*' --output-file $(abs_top_builddir)/coverage/coverage.cleaned4.info --config-file .lcov-config
-       lcov --no-external --compat-libtool --remove $(abs_top_builddir)/coverage/coverage.cleaned4.info '*usr/include*' --output-file $(abs_top_builddir)/coverage/coverage.cleaned5.info --config-file .lcov-config
-       genhtml --config-file .lcov-config --legend -t "$(PACKAGE_STRING)" -o $(abs_top_builddir)/coverage/html $(abs_top_builddir)/coverage/coverage.cleaned5.info
+       lcov --no-external --compat-libtool --remove $(abs_top_builddir)/coverage/coverage.info \
+         '*.h' '*/tests/*' '*NONE*' '*/doc/*' '*usr/include*' '*/bin*' '*/edje_external*' \
+         '*/generic/*' '*/modules/*' '*/static_libs/*' \
+         --output-file $(abs_top_builddir)/coverage/coverage.cleaned.info --config-file .lcov-config
+       genhtml --config-file .lcov-config --legend -t "$(PACKAGE_STRING)" -o $(abs_top_builddir)/coverage/html $(abs_top_builddir)/coverage/coverage.cleaned.info
        @echo "Coverage Report at $(abs_top_builddir)/coverage/html"
 
 endif