Files
KubeControl/cmake/Modules/CppCheck.cmake
2023-08-05 13:41:10 +02:00

29 lines
987 B
CMake

option(CPPCHECK "Turns cppcheck processing on if executable is found." OFF)
find_program(CPPCHECK_PATH NAMES cppcheck)
# export compile commands to json file to be used by cppcheck
set(CMAKE_EXPORT_COMPILE_COMMANDS 1)
set(CPPCHECK_COMPILE_COMMANDS "${CMAKE_BINARY_DIR}/compile_commands.json")
# output directory for codecheck analysis
set(CPPCHECK_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/cppcheck_results)
if(CPPCHECK AND CPPCHECK_PATH AND NOT CPPCHECK_ADDED)
set(CPPCHECK_ADDED ON)
if (NOT TARGET cppcheck)
add_custom_target(cppcheck
COMMAND rm -rf ${CPPCHECK_OUTPUT_DIRECTORY}\;
mkdir -p ${CPPCHECK_OUTPUT_DIRECTORY}\;
${CPPCHECK_PATH}
--project=${CPPCHECK_COMPILE_COMMANDS}
--plist-output=${CPPCHECK_OUTPUT_DIRECTORY}
--enable=all
--inline-suppr
)
endif()
endif()