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
|
macro (add_cppcheck_target _cc_target _cc_directories _cc_ignore)
set(_cc_directories_var ${_cc_directories})
string (REPLACE " " " ${CMAKE_CURRENT_SOURCE_DIR}/" _cc_abs_directories ${_cc_directories_var})
set (_cc_abs_directories "${CMAKE_CURRENT_SOURCE_DIR}/${_cc_abs_directories}")
separate_arguments (xxx UNIX_COMMAND "${_cc_abs_directories}")
if (_cc_ignore STREQUAL "")
string (REPLACE " " "${CMAKE_CURRENT_SOURCE_DIR}/" _cc_abs_ignore ${_cc_ignore})
set (_cc_abs_ignore ";${CMAKE_CURRENT_SOURCE_DIR}/${_cc_abs_ignore}")
endif ()
set (_cc_extra_input "${ARGV3}")
message ("Replaced ?${_cc_abs_directories}?")
message ("Replaxxx ?${xxx}?")
list (LENGTH _cc_abs_directories bla)
message ("ignored ${_cc_abs_ignore} length is ${bla}")
file(GLOB_RECURSE ALL_SOURCE_FILES *.c *.h)
#message (${ALL_SOURCE_FILES})
#
# set (_ignore_arg "--ignore ${_ignore}")
#else ()
# set (_ignore_arg "set ${_ignore}")
#endif ()
#list (APPEND _cpp_remove_list "")
#list (APPEND _cpp_remove_list )
#set (_ggo_extra_input ${ARGV1})
add_custom_target (
${_cc_target}
COMMAND cppcheck
--enable=all
--template="[{severity}][{id}] {message} {callstack} \(On {file}:{line}\)"
--suppress="unusedStructMember"
-i="${_cc_abs_ignore}"
--verbose
--quiet
${_cc_extra_input}
#"${_cc_abs_directories}"
${CMAKE_SOURCE_DIR}
#"${xxx}"
#VERBATIM
)
endmacro(add_cppcheck_target)
|