This commit is contained in:
Andrei Astafev 2020-04-14 13:35:51 +03:00
parent 9530058f05
commit 5761bcb0fc

View File

@ -1136,7 +1136,7 @@ git clone --recursive https://git.246060.ru/f1x1t/cmlib-example-app-features
в едином стандарте, для её использования требуются установленные программы
`dos2unix` и `uncrustify`. Утилита `dos2unix` приводит переводы строк в
файлах к стандарту, принятому в Unix. Утилита `uncrustify` форматирует
файлы с исходными кодами на языке C++{plus}{plus}++ в соответствии с правилами,
файлы с исходными кодами на языке C{plus}{plus} в соответствии с правилами,
перечисленными в файле `cmake/etc/uncrustify/default.cfg`. Пример использования:
[source,cmake]
@ -1147,15 +1147,27 @@ add_format_sources(${TRGT} ${TRGT_sources} ${TRGT_headers})
=== Статический анализ исходных кодов
Для работы с программами на языке C++{plus}{plus}++ используются утилиты, выполняющие
статический анализ кода и генерирующие отчёты, помогающие программисту
находить и устранять ошибки. Эти программы применяют методы, позволяющие
в синтаксически корректном коде находить недостатки или ошибки, которые
пропускает компилятор.
Для работы с программами на языке C{plus}{plus} используются утилиты,
выполняющие статический анализ кода и генерирующие отчёты, помогающие
программисту находить и устранять ошибки. Эти программы применяют методы,
позволяющие в синтаксически корректном коде находить недостатки или ошибки,
которые пропускает компилятор, ценой продолжительного анализа исходных текстов.
Библиотека CMLib поддерживает анализаторы https://github.com/KDE/clazy[clazy],
https://clang.llvm.org/extra/clang-tidy[Clang Tidy],
https://clang-analyzer.llvm.org[Clang Static Analyzer] и
https://www.viva64.com/ru/pvs-studio[PVS-Studio].
==== clazy
Функция `add_clazy-check` создаёт цели, которые используются
для проверки исходных текстов анализатором `clang`.
Пример использования:
[source,cmake]
----
# Создание цели clazy-check для проверки утилитой clazy
add_clazy_check(${TRGT} ${TRGT_cpp} ${TRGT_hpp} ${TRGT_moc_hpp})
----