38 lines
1.7 KiB
CMake
38 lines
1.7 KiB
CMake
include_guard(GLOBAL)
|
|
set(PSC_TOOL_PATHS_FILE "" CACHE FILEPATH "External quality-tool path configuration file")
|
|
if (PSC_TOOL_PATHS_FILE)
|
|
if (IS_ABSOLUTE "${PSC_TOOL_PATHS_FILE}")
|
|
include("${PSC_TOOL_PATHS_FILE}")
|
|
else()
|
|
include("${CMAKE_CURRENT_LIST_DIR}/${PSC_TOOL_PATHS_FILE}")
|
|
endif()
|
|
endif()
|
|
set(PSC_PWSH_EXECUTABLE "" CACHE FILEPATH "PowerShell 7 executable")
|
|
set(PSC_CPPCHECK_EXECUTABLE "" CACHE FILEPATH "Cppcheck executable")
|
|
set(PSC_CLANG_TIDY_EXECUTABLE "" CACHE FILEPATH "clang-tidy executable")
|
|
set(PSC_LIZARD_EXECUTABLE "" CACHE FILEPATH "Lizard executable")
|
|
set(PSC_TOKEI_EXECUTABLE "" CACHE FILEPATH "Tokei executable")
|
|
set(PSC_CLOC_EXECUTABLE "" CACHE FILEPATH "Cloc executable")
|
|
set(PSC_DOXYGEN_EXECUTABLE "" CACHE FILEPATH "Doxygen executable")
|
|
set(PSC_DOT_EXECUTABLE "" CACHE FILEPATH "Graphviz dot executable")
|
|
function(_psc_discover_tool cache_variable)
|
|
if (NOT "${${cache_variable}}" STREQUAL "")
|
|
return()
|
|
endif()
|
|
unset(found_program)
|
|
unset(found_program CACHE)
|
|
find_program(found_program NAMES ${ARGN})
|
|
if (found_program)
|
|
set(${cache_variable} "${found_program}" CACHE FILEPATH "" FORCE)
|
|
endif()
|
|
unset(found_program CACHE)
|
|
endfunction()
|
|
_psc_discover_tool(PSC_PWSH_EXECUTABLE pwsh pwsh.exe)
|
|
_psc_discover_tool(PSC_CPPCHECK_EXECUTABLE cppcheck cppcheck.exe)
|
|
_psc_discover_tool(PSC_CLANG_TIDY_EXECUTABLE clang-tidy clang-tidy.exe)
|
|
_psc_discover_tool(PSC_LIZARD_EXECUTABLE lizard lizard.exe)
|
|
_psc_discover_tool(PSC_TOKEI_EXECUTABLE tokei tokei.exe)
|
|
_psc_discover_tool(PSC_CLOC_EXECUTABLE cloc cloc.exe)
|
|
_psc_discover_tool(PSC_DOXYGEN_EXECUTABLE doxygen doxygen.exe)
|
|
_psc_discover_tool(PSC_DOT_EXECUTABLE dot dot.exe)
|