# - Try to find Clang tools # # The following are set after configuration is done: # clang-tidy_FOUND # ClangTools::clang-tidy # clang-apply-replacements_FOUND # ClangTools::clang-apply-replacements # run-clang-tidy_FOUND # ClangTools::run-clang-tidy include_guard() include(FindPackageHandleStandardArgs) foreach(program_name IN ITEMS clang-tidy clang-apply-replacements) find_program(${program_name}_BINARY NAMES ${program_name}-devel ${program_name}-8 ${program_name} PATH_SUFFIXES "LLVM/bin") find_package_handle_standard_args(${program_name} DEFAULT_MSG ${program_name}_BINARY) if(${program_name}_FOUND AND NOT TARGET ClangTools::${program_name}) add_executable(ClangTools::${program_name} IMPORTED) set_property(TARGET ClangTools::${program_name} PROPERTY IMPORTED_LOCATION "${${program_name}_BINARY}") endif() endforeach() find_program(run-clang-tidy_BINARY NAMES run-clang-tidy run-clang-tidy.py PATH_SUFFIXES "LLVM/bin" "llvm-devel/share/clang") find_package_handle_standard_args(run-clang-tidy DEFAULT_MSG run-clang-tidy_BINARY) if(run-clang-tidy_FOUND AND NOT TARGET ClangTools::run-clang-tidy) add_executable(ClangTools::run-clang-tidy IMPORTED) set_property(TARGET ClangTools::run-clang-tidy PROPERTY IMPORTED_LOCATION "${run-clang-tidy_BINARY}") endif()