У меня большой проект с использованием CMake. Я хочу добавить поддержку clang_tidy-8
со следующим кодом:
set(BORG_CLANG_TIDY OFF CACHE STRING "If enabled, clang-tidy will be used. If set to 'fix', fixes will be done on source")
set_property(CACHE BORG_CLANG_TIDY PROPERTY STRINGS ON OFF fix)
if(BORG_CLANG_TIDY)
if (BORG_CLANG_TIDY STREQUAL "fix")
set(maybe_fix -fix)
endif()
set(CMAKE_CXX_CLANG_TIDY clang-tidy-8 -extra-arg=-Wno-unknown-warning-option -format-style=file ${maybe_fix} )
endif()
Я поместил правильное значение .clang-tidy
в корневой каталог проекта (правильное = с желаемыми проверками). Тем не менее, есть каталоги, которые я не хочу, чтобы clang tidy проверял / исправлял (3-й и старый код, который нельзя изменить, потому что он хрупкий). Поэтому я попытался поместить пустой файл .clang-tidy
в эти каталоги (пустой = с -checks=-*
). Это не работает, потому что Error: no checks enabled.
Я надеялся найти какую-то подделку -checks=-*,hello-world-do-nothing-check
, но ничего не представилось.
Есть ли другой способ отключить проверки в выбранных подкаталогах (/ subtrees)? Эти каталоги являются статическими и при необходимости могут быть жестко закодированы в CMake.