Spec-Zone.ru › CMake

SKIP_LINTING

Добавлено в версии 3.27.

Это свойство позволяет исключить определённый файл исходного кода из процесса статического анализа. Этот процесс включает запуск таких инструментов, как <LANG>_CPPLINT, <LANG>_CLANG_TIDY, <LANG>_CPPCHECK, <LANG>_ICSTAT, <LANG>_PVS_STUDIO и <LANG>_INCLUDE_WHAT_YOU_USE для файлов исходного кода, а также компиляцию файлов заголовков в рамках VERIFY_INTERFACE_HEADER_SETS. Если задать SKIP_LINTING для файла исходного кода, упомянутые инструменты статического анализа не будут запускаться для этого файла.

Пример

Рассмотрим проект на C++, включающий несколько файлов исходного кода, например main.cpp, things.cpp и generatedBindings.cpp. В этом примере требуется исключить файл generatedBindings.cpp из процесса статического анализа. Для этого можно использовать свойство SKIP_LINTING с командой set_source_files_properties(), как показано ниже:

add_executable(MyApp main.cpp things.cpp generatedBindings.cpp)

set_source_files_properties(generatedBindings.cpp PROPERTIES
    SKIP_LINTING ON
)

В приведённом фрагменте кода свойству SKIP_LINTING присваивается значение true для файла исходного кода generatedBindings.cpp. В результате при запуске инструментов статического анализа, заданных свойствами <LANG>_CPPLINT, <LANG>_CLANG_TIDY, <LANG>_CPPCHECK, <LANG>_ICSTAT или <LANG>_INCLUDE_WHAT_YOU_USE, они пропустят анализ файла generatedBindings.cpp.

Свойство SKIP_LINTING позволяет выборочно исключать определённые файлы исходного кода из процесса статического анализа. Это позволяет сосредоточить работу инструментов на нужных частях проекта и повысить эффективность процесса анализа.

Если из процесса статического анализа нужно исключить несколько файлов, удобной альтернативой будет свойство набора файлов SKIP_LINTING.

См. также

  • SKIP_LINTING — свойство набора файлов
  • SKIP_LINTING — свойство цели

© 2000–2026 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/latest/prop_sf/SKIP_LINTING.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API