| # - 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() |