-
Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy pathccov.mk
More file actions
41 lines (35 loc) · 1.21 KB
/
ccov.mk
File metadata and controls
41 lines (35 loc) · 1.21 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# SPDX-FileCopyrightText: 2023-2024 Sony Semiconductor Solutions Corporation
#
# SPDX-License-Identifier: Apache-2.0
PROFILE_CFLAGS = -fprofile-instr-generate -fcoverage-mapping -g -Og
PROFILE_LDFLAGS = -fprofile-instr-generate -fcoverage-mapping -Og
CI_FILTER=\
src/libevp-utils/*.c\
src/libevp-agent/*.c\
src/libevp-agent/models/*.c\
src/libevp-agent/hub/*.c\
src/libevp-agent/hub/tb/*.c\
coverage/cov.lcov: FORCE
trap "rm -f $$$$.tmp" EXIT INT TERM;\
find test/ -name '*.profraw' |\
xargs llvm-profdata merge -o coverage/cov.profdata -sparse
find test/ -name '*.elf' |\
xargs llvm-cov export --instr-profile coverage/cov.profdata --format lcov > $$$$.tmp &&\
mv $$$$.tmp $@
coverage/filtered.lcov: coverage/cov.lcov
trap "rm -f $$$$.tmp" EXIT INT TERM;\
find test/ -name '*.elf' |\
xargs llvm-cov export --instr-profile coverage/cov.profdata --format lcov \
--sources $(CI_FILTER) \
--object > $$$$.tmp &&\
mv $$$$.tmp $@
coverage: FORCE
rm -rf coverage
mkdir -p coverage
$(MAKE) coverage/cov.lcov
genhtml --branch-coverage -o coverage coverage/cov.lcov
coverage-ci: FORCE
rm -rf coverage
mkdir -p coverage
$(MAKE) coverage/filtered.lcov
genhtml --branch-coverage -o coverage coverage/filtered.lcov