aboutsummaryrefslogtreecommitdiff
path: root/core/test/Makefile.check
blob: 7c347bea2a566d7bd50856332ef776ee1022f81f (plain)
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
# -*-Makefile-*-
CORE_TEST := \
	core/test/run-bitmap \
	core/test/run-cpufeatures \
	core/test/run-device \
	core/test/run-flash-subpartition \
	core/test/run-flash-firmware-versions \
	core/test/run-mem_region \
	core/test/run-malloc \
	core/test/run-malloc-speed \
	core/test/run-mem_region_init \
	core/test/run-mem_region_next \
	core/test/run-mem_region_release_unused \
	core/test/run-mem_region_release_unused_noalloc \
	core/test/run-mem_region_reservations \
	core/test/run-mem_range_is_reserved \
	core/test/run-nvram-format \
	core/test/run-trace core/test/run-msg \
	core/test/run-pel \
	core/test/run-pool \
	core/test/run-time-utils \
	core/test/run-timebase \
	core/test/run-timer \
	core/test/run-buddy \
	core/test/run-pci-quirk

HOSTCFLAGS+=-I . -I include -Wno-error=attributes

CORE_TEST_NOSTUB := core/test/run-console-log
CORE_TEST_NOSTUB += core/test/run-console-log-buf-overrun
CORE_TEST_NOSTUB += core/test/run-console-log-pr_fmt
CORE_TEST_NOSTUB += core/test/run-api-test

LCOV_EXCLUDE += $(CORE_TEST:%=%.c) core/test/stubs.c
LCOV_EXCLUDE += $(CORE_TEST_NOSTUB:%=%.c) /usr/include/*

.PHONY : core-check
core-check: $(CORE_TEST:%=%-check) $(CORE_TEST_NOSTUB:%=%-check)

.PHONY : core-coverage
core-coverage: $(CORE_TEST:%=%-gcov-run)
core-coverage: $(CORE_TEST_NOSTUB:%=%-gcov-run)

check: core-check
coverage: core-coverage

$(CORE_TEST:%=%-gcov-run) : %-run: %
	$(call QTEST, TEST-COVERAGE ,$< , $<)

$(CORE_TEST_NOSTUB:%=%-gcov-run) : %-run: %
	$(call QTEST, TEST-COVERAGE ,$< , $<)

$(CORE_TEST:%=%-check) : %-check: %
	$(call QTEST, RUN-TEST ,$(VALGRIND) $<, $<)

$(CORE_TEST_NOSTUB:%=%-check) : %-check: %
	$(call QTEST, RUN-TEST ,$(VALGRIND) $<, $<)

core/test/stubs.o: core/test/stubs.c
	$(call Q, HOSTCC ,$(HOSTCC) $(HOSTCFLAGS) -g -c -o $@ $<, $<)

$(CORE_TEST) : core/test/stubs.o

$(CORE_TEST) : % : %.c
	$(call Q, HOSTCC ,$(HOSTCC) $(HOSTCFLAGS) -O0 -g -I include -I . -I libfdt -o $@ $< core/test/stubs.o, $<)

$(CORE_TEST_NOSTUB) : % : %.c
	$(call Q, HOSTCC ,$(HOSTCC) $(HOSTCFLAGS) -O0 -g -I include -I . -I libfdt -o $@ $< , $<)

$(CORE_TEST:%=%-gcov): %-gcov : %.c %
	$(call Q, HOSTCC ,$(HOSTCC) $(HOSTCFLAGS) $(HOSTGCOVCFLAGS) -I include -I . -I libfdt -lgcov -o $@ $< core/test/stubs.o, $<)

$(CORE_TEST_NOSTUB:%=%-gcov) : %-gcov : %.c %
	$(call Q, HOSTCC ,$(HOSTCC) $(HOSTCFLAGS) $(HOSTGCOVCFLAGS) -I include -I . -I libfdt -lgcov -o $@ $< , $<)

core/test/run-flash-firmware-versions-gcov-run: core/test/run-flash-firmware-versions-inputs-gcov-run

core/test/run-flash-firmware-versions-inputs-gcov-run: core/test/run-flash-firmware-versions-gcov
	$(call Q, TEST-COVERAGE , ./core/test/run-flash-firmware-versions-gcov core/test/firmware-versions-input/version-0 > /dev/null, $< version-0)
	$(call Q, TEST-COVERAGE , ./core/test/run-flash-firmware-versions-gcov core/test/firmware-versions-input/version-1 > /dev/null, $< version-1)
	$(call Q, TEST-COVERAGE , ./core/test/run-flash-firmware-versions-gcov core/test/firmware-versions-input/version-2 > /dev/null, $< version-2)
	$(call Q, TEST-COVERAGE , ./core/test/run-flash-firmware-versions-gcov core/test/firmware-versions-input/version-10 > /dev/null, $< version-10)
	$(call Q, TEST-COVERAGE , ./core/test/run-flash-firmware-versions-gcov core/test/firmware-versions-input/version-11 > /dev/null, $< version-11)
	$(call Q, TEST-COVERAGE , ./core/test/run-flash-firmware-versions-gcov core/test/firmware-versions-input/version-16 > /dev/null, $< version-16)
	$(call Q, TEST-COVERAGE , ./core/test/run-flash-firmware-versions-gcov core/test/firmware-versions-input/version-26 > /dev/null, $< version-26)
	$(call Q, TEST-COVERAGE , ./core/test/run-flash-firmware-versions-gcov core/test/firmware-versions-input/version-27 > /dev/null, $< version-27)
	$(call Q, TEST-COVERAGE , ./core/test/run-flash-firmware-versions-gcov core/test/firmware-versions-input/version-29 > /dev/null, $< version-29)
	$(call Q, TEST-COVERAGE , ./core/test/run-flash-firmware-versions-gcov core/test/firmware-versions-input/version-trunc > /dev/null, $< version-trunc)
	$(call Q, TEST-COVERAGE , ./core/test/run-flash-firmware-versions-gcov core/test/firmware-versions-input/version-long > /dev/null, $< version-long)
	$(call Q, TEST-COVERAGE , ./core/test/run-flash-firmware-versions-gcov core/test/firmware-versions-input/version-nodash > /dev/null, $< version-nodash)


-include $(wildcard core/test/*.d)

clean: core-test-clean

core-test-clean:
	$(RM) -f core/test/*.[od] $(CORE_TEST) $(CORE_TEST:%=%-gcov)
	$(RM) -f $(CORE_TEST_NOSTUB) $(CORE_TEST_NOSTUB:%=%-gcov)
	$(RM) -f *.gcda *.gcno skiboot.info
	$(RM) -rf coverage-report