Skip to content

Commit c6e094f

Browse files
slavazaborodin
authored andcommitted
Added makefile's targets for run cppcheck
Signed-off-by: Slava Zanko <[email protected]>
1 parent b34e1d2 commit c6e094f

File tree

1 file changed

+77
-1
lines changed

1 file changed

+77
-1
lines changed

Makefile.am

+77-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,16 @@ ACLOCAL_AMFLAGS = -I m4
1717

1818
CONFIG_STATUS_DEPENDENCIES = $(top_srcdir)/version.h
1919

20-
.PHONY: update-version
20+
.PHONY: update-version \
21+
cppcheck \
22+
cppcheck-error \
23+
cppcheck-information \
24+
cppcheck-performance \
25+
cppcheck-portability \
26+
cppcheck-style \
27+
cppcheck-warning \
28+
cppcheck-all
29+
2130

2231
update-version:
2332
@if test -x $(top_srcdir)/maint/utils/version.sh; then \
@@ -30,3 +39,70 @@ update-version:
3039
fi
3140

3241
$(top_srcdir)/version.h: update-version
42+
43+
CPPCHECK_CMD = cppcheck \
44+
--inline-suppr \
45+
--error-exitcode=0 \
46+
-j 4 \
47+
--force \
48+
-I $(top_srcdir)/lib \
49+
--language=c \
50+
--std=c99
51+
52+
CPPCHECK_DIRS = \
53+
$(top_srcdir)/lib \
54+
$(top_srcdir)/src
55+
56+
CPPCHECK_OUT_PREFIX = $(top_builddir)/cppcheck-
57+
58+
CPPCHECK_OUT_EXT = log.txt
59+
60+
CPPCHECK_SED_FILTER = \
61+
-e '/\/src\/vfs\/smbfs\//d' \
62+
-e '/is reassigned a value before the old one has been used./d' \
63+
-e '/ Unmatched suppression: /d' \
64+
-e "/Skipping configuration '.*' since the value of '.*' is unknown./d"
65+
66+
cppcheck:
67+
$(CPPCHECK_CMD) --enable=all $(CPPCHECK_DIRS) 2>$(CPPCHECK_OUT_PREFIX)all.$(CPPCHECK_OUT_EXT);
68+
$(SED) -i $(CPPCHECK_SED_FILTER) $(CPPCHECK_OUT_PREFIX)all.$(CPPCHECK_OUT_EXT)
69+
70+
cppcheck-all: cppcheck
71+
72+
cppcheck-information:
73+
$(CPPCHECK_CMD) --enable=information $(CPPCHECK_DIRS) 2>$(CPPCHECK_OUT_PREFIX)information.$(CPPCHECK_OUT_EXT);
74+
$(SED) -i $(CPPCHECK_SED_FILTER) $(CPPCHECK_OUT_PREFIX)information.$(CPPCHECK_OUT_EXT)
75+
76+
cppcheck-performance:
77+
$(CPPCHECK_CMD) --enable=performance $(CPPCHECK_DIRS) 2>$(CPPCHECK_OUT_PREFIX)performance.$(CPPCHECK_OUT_EXT);
78+
$(SED) -i $(CPPCHECK_SED_FILTER) $(CPPCHECK_OUT_PREFIX)performance.$(CPPCHECK_OUT_EXT)
79+
80+
cppcheck-portability:
81+
$(CPPCHECK_CMD) --enable=portability $(CPPCHECK_DIRS) 2>$(CPPCHECK_OUT_PREFIX)portability.$(CPPCHECK_OUT_EXT);
82+
$(SED) -i $(CPPCHECK_SED_FILTER) $(CPPCHECK_OUT_PREFIX)portability.$(CPPCHECK_OUT_EXT)
83+
84+
cppcheck-style:
85+
$(CPPCHECK_CMD) --enable=style $(CPPCHECK_DIRS) 2>$(CPPCHECK_OUT_PREFIX)style.$(CPPCHECK_OUT_EXT);
86+
$(SED) -i $(CPPCHECK_SED_FILTER) $(CPPCHECK_OUT_PREFIX)style.$(CPPCHECK_OUT_EXT)
87+
88+
cppcheck-warning:
89+
$(CPPCHECK_CMD) --enable=warning $(CPPCHECK_DIRS) 2>$(CPPCHECK_OUT_PREFIX)warning.$(CPPCHECK_OUT_EXT);
90+
$(SED) -i $(CPPCHECK_SED_FILTER) $(CPPCHECK_OUT_PREFIX)warning.$(CPPCHECK_OUT_EXT)
91+
92+
cppcheck-unusedFunction:
93+
$(CPPCHECK_CMD) --enable=unusedFunction $(CPPCHECK_DIRS) 2>$(CPPCHECK_OUT_PREFIX)unusedFunction.$(CPPCHECK_OUT_EXT);
94+
$(SED) -i $(CPPCHECK_SED_FILTER) $(CPPCHECK_OUT_PREFIX)unusedFunction.$(CPPCHECK_OUT_EXT)
95+
96+
cppcheck-missingInclude:
97+
$(CPPCHECK_CMD) --enable=missingInclude $(CPPCHECK_DIRS) 2>$(CPPCHECK_OUT_PREFIX)missingInclude.$(CPPCHECK_OUT_EXT);
98+
$(SED) -i $(CPPCHECK_SED_FILTER) $(CPPCHECK_OUT_PREFIX)missingInclude.$(CPPCHECK_OUT_EXT)
99+
100+
cppcheck-split-all: \
101+
cppcheck-information \
102+
cppcheck-performance \
103+
cppcheck-portability \
104+
cppcheck-style \
105+
cppcheck-warning \
106+
cppcheck-unusedFunction \
107+
cppcheck-missingInclude
108+

0 commit comments

Comments
 (0)