# Configuration for testlib and its tests, to instrument with # FrogLogic's Squish CoCo (cf. testcocoon.prf, which handles similar # for general code; but testlib needs special handling). # Only for use when feature testlib_selfcover is enabled: !qtConfig(testlib_selfcover): return() # This enables verification that testlib itself is adequately tested, # as a grounds for trusting that testing with it is useful. # Exclude all non-testlib source from coverage instrumentation: COVERAGE_OPTIONS = --cs-exclude-file-abs-wildcard=$$QT_SOURCE_TREE/* COVERAGE_OPTIONS += --cs-include-file-abs-wildcard=*/src/testlib/* COVERAGE_OPTIONS += --cs-mcc # enable Multiple Condition Coverage COVERAGE_OPTIONS += --cs-mcdc # enable Multiple Condition / Decision Coverage # (recommended for ISO 26262 ASIL A, B and C -- highly recommended for ASIL D) # https://doc.froglogic.com/squish-coco/4.1/codecoverage.html#sec%3Amcdc QMAKE_CFLAGS += $$COVERAGE_OPTIONS QMAKE_CXXFLAGS += $$COVERAGE_OPTIONS QMAKE_LFLAGS += $$COVERAGE_OPTIONS # FIXME: relies on QMAKE_* being just the command-names, with no path prefix QMAKE_CC = cs$$QMAKE_CC QMAKE_CXX = cs$$QMAKE_CXX QMAKE_LINK = cs$$QMAKE_LINK QMAKE_LINK_SHLIB = cs$$QMAKE_LINK_SHLIB QMAKE_AR = cs$$QMAKE_AR QMAKE_LIB = cs$$QMAKE_LIB