_rules-coverage.mk 650 B

1234567891011121314151617181920212223242526
  1. .PHONY: coverage lcov test
  2. ifneq (,$(COVERAGE_LIST))
  3. COVERAGE_PROGS := \(
  4. COVERAGE_PROGS += $(COVERAGE_LIST)
  5. COVERAGE_PROGS += \)
  6. COVERAGE_CMD := $(RULE_DIR)/scripts/exe_coverage_progs.sh
  7. endif
  8. ifeq (,$(COVERAGE_CMD))
  9. coverage lcov test:
  10. @echo "COVERAGE_CMD not defined, skip"
  11. else
  12. coverage lcov test:
  13. #
  14. # SKIP --coverage existence in $(CFLAGS) checking for now
  15. #
  16. $(Q)$(MAKE) --no-print-directory WITH_LCOV=1
  17. $(Q)OUTPUT_DIR=$(OUTPUT_DIR) bash <($(SED) '2iPROGS=$(COVERAGE_PROGS)' $(COVERAGE_CMD)) || true
  18. $(Q)CFLAGS=$(CFLAGS) \
  19. $(foreach V,$(INFO_ENV_VARS),$(V)="$($(V))") \
  20. bash $(RULE_DIR)/scripts/gen_lcov_report.sh
  21. endif