summaryrefslogtreecommitdiffstats
path: root/mkspecs
diff options
context:
space:
mode:
authorDominik Holland <dominik.holland@pelagicore.com>2018-02-06 15:44:52 +0100
committerRobert Griebl <robert.griebl@pelagicore.com>2018-02-07 13:08:01 +0000
commit05c61600fa680d26e72a9e3ceceea6805016c8df (patch)
treecb9ac8711c1eecd535171a5e2c1932bc9be5f71f /mkspecs
parente50729399e1b4f5e2610f5fcd5dba692bd03e9b4 (diff)
Add a easy way to do a test-coverage run
This is inspired by QtApplicationManagers version, but adapted for qtivi and it's autogeneration. Change-Id: I8880e277646f66b976787739e56206044577560a Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com>
Diffstat (limited to 'mkspecs')
-rw-r--r--mkspecs/features/ivi-coverage.prf18
1 files changed, 18 insertions, 0 deletions
diff --git a/mkspecs/features/ivi-coverage.prf b/mkspecs/features/ivi-coverage.prf
new file mode 100644
index 00000000..b642b4a9
--- /dev/null
+++ b/mkspecs/features/ivi-coverage.prf
@@ -0,0 +1,18 @@
+# generate code coverage information using gcov/lcov/genhtml
+CONFIG(debug,debug|release) {
+ equals(TEMPLATE, "subdirs") {
+ sub-coverage.target = coverage
+ sub-coverage.CONFIG = recursive
+ QMAKE_EXTRA_TARGETS += sub-coverage
+ } else {
+ coverage_pre.commands += @echo && echo "Building with coverage support..." && echo $(eval CXXFLAGS += -O0 -fprofile-arcs -ftest-coverage)$(eval LFLAGS += -O0 -fprofile-arcs -ftest-coverage)
+
+ coverage.CONFIG += recursive
+ coverage.commands = @echo && echo "Finished building with coverage support." && echo
+ build_pass|!debug_and_release:coverage.depends = coverage_pre all
+
+ QMAKE_EXTRA_TARGETS *= coverage_pre coverage
+ }
+}
+
+QMAKE_CLEAN += $(OBJECTS_DIR)/*.gcda $(OBJECTS_DIR)/*.gcno $(TARGET).gcov-info