diff --git a/CMakeLists.txt b/CMakeLists.txt index d8d73d7e6405b6a83a50419f8b0db4e8a44e0811..6c36b3ea9fbd6526c7a00e78baf85afffb486480 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -210,6 +210,7 @@ endif() add_subdirectory("${PUGS_SOURCE_DIR}/packages/kokkos") +# set as SYSTEM for static analysis include_directories(SYSTEM ${KOKKOS_SOURCE_DIR}/core/src) include_directories(SYSTEM ${KOKKOS_SOURCE_DIR}/containers/src) include_directories(SYSTEM ${KOKKOS_BINARY_DIR}) @@ -268,8 +269,8 @@ endif() # Rang (colors? Useless thus necessary!) include_directories(${PUGS_SOURCE_DIR}/packages/rang/include) -# CLI11 -include_directories(${PUGS_SOURCE_DIR}/packages/CLI11/include) +# CLI11 (set as SYSTEM for static analysis) +include_directories(SYSTEM ${PUGS_SOURCE_DIR}/packages/CLI11/include) # PEGTL include_directories(${PUGS_SOURCE_DIR}/packages/PEGTL/include/tao) diff --git a/cmake/ClazyStandaloneProcess.cmake b/cmake/ClazyStandaloneProcess.cmake index 45582a54e82da2f9b2cf32b0c658bfc054381a2c..83914ba4614f3e0e52a062dd68a31d8963032ba8 100644 --- a/cmake/ClazyStandaloneProcess.cmake +++ b/cmake/ClazyStandaloneProcess.cmake @@ -20,22 +20,40 @@ if(PUGS_SOURCE_DIR AND CLAZY_STANDALONE) endif() endif() + list(LENGTH ALL_SOURCE_FILES LIST_SIZE) + + set(SOURCE_ID 1) # apply style to the file list foreach(SOURCE_FILE ${ALL_SOURCE_FILES}) string(REGEX REPLACE "^${PUGS_SOURCE_DIR}/" "" BASE_SOURCE_FILE "${SOURCE_FILE}") + + math(EXPR PROGRESS "(100*${SOURCE_ID})/${LIST_SIZE}") + string(LENGTH ${PROGRESS} PROGRESS_SIZE ) + + math(EXPR NBSPC "3-${PROGRESS_SIZE}") + string(SUBSTRING " " 0 ${NBSPC} PRESPC) + execute_process( COMMAND "${CMAKE_COMMAND}" -E env CLICOLOR_FORCE=1 - "${CMAKE_COMMAND}" -E cmake_echo_color --green "Running clazy-standalone on ${BASE_SOURCE_FILE}") + "${CMAKE_COMMAND}" -E cmake_echo_color --no-newline "[${PRESPC}${PROGRESS}%] " --green "Analyzing ${BASE_SOURCE_FILE}") + execute_process(COMMAND "${CMAKE_COMMAND}" -E echo "") + math(EXPR SOURCE_ID "${SOURCE_ID}+1") execute_process( COMMAND "${CLAZY_STANDALONE}" "-p=${PUGS_BINARY_DIR}" "${SOURCE_FILE}" COMMAND_ECHO ${ECHO_CMD_TO} - RESULT_VARIABLE clazy_result) + RESULT_VARIABLE CLAZY_RESULT) - if (NOT DEFINED CONTINUE_ON_ERROR) - if (NOT (${clazy_result} EQUAL "0")) - message(FATAL_ERROR) + if (NOT ("${CLAZY_RESULT}" EQUAL "0")) + set(CLAZY_FAILED "1") + message("CLAZY_FAILED ${CLAZY_FAILED}") + if (NOT DEFINED CONTINUE_ON_ERROR) + break() endif() endif() endforeach() + + if(CLAZY_FAILED) + message(FATAL_ERROR "Clazy encountered errors!") + endif() endif()