cmlib/CMLibCodeAnalysisPvsStudio.cmake

23 lines
776 B
CMake

function(add_pvs_check)
list(GET ARGN 0 _target)
if (CMAKE_EXPORT_COMPILE_COMMANDS)
include(PVS-Studio)
find_program(PVS_STUDIO_ANALYZER_EXE NAMES pvs-studio-analyzer)
if(PVS_STUDIO_ANALYZER_EXE)
pvs_studio_add_target(TARGET pvs-check-${_target}
DEPENDS ${_target}
COMPILE_COMMANDS
HIDE_HELP
OUTPUT FORMAT errorfile
CFG_TEXT "analysis-mode=29"
MODE GA:1,2,3;64:1;OP:1,2;CS:1,2)
else()
message(WARNING "PVS-Studio is not found")
endif()
else()
message(WARNING "Option CMAKE_EXPORT_COMPILE_COMMANDS is not set. PVS checks will be disabled.")
endif()
endfunction()