Как отключить предупреждения clang для генерации протобуфа в CMakeList.txt - PullRequest
0 голосов
/ 02 апреля 2020

Я новичок в Cmake / protobuf domain

В моем CMakeList.txt у меня есть set(CMAKE_CXX_CLANG_TIDY "clang-tidy;-checks=google-*,cppcoreguidelines-*") для предупреждений линтера.

Также я включаю Catkinized gRP C Пакет для protobuf

find_package(catkin REQUIRED COMPONENTS grpc)

generate_proto(......)

Когда я компилирую этот проект, я вижу много предупреждений для file_name.pb.cc файлов

Можно ли как-нибудь отключить clang linter для автоматически сгенерированных файлов или указать c цели?

1 Ответ

0 голосов
/ 03 апреля 2020

Сравнительно трудно исключить указанные c исходные файлы из clang-tidy, поскольку cmake генерирует список всех исходных файлов каждой активированной цели clang-tidy и передает его в командную строку clang-tidys.

Если вы включаете clang-tidy только для одной или нескольких указанных c целей и генерируете свои собственные файлы protobuf, вы можете разделить ваши материалы protobuf в библиотеку stati c и не включать clang-tidy для этой цели. С ROS я бы посоветовал вам запускать clang-tidy только для ваших собственных целей:

set_target_properties( myAwesomeTarget
    PROPERTIES CXX_CLANG_TIDY "clang-tidy;-checks=google-*,cppcoreguidelines-"
)

Если вы хотите сохранить глобальную clang-tidy, вы можете отключить clang-tidy для отдельных целей в одной и той же цели. манера:

set_target_properties( myAwesomeTarget
    PROPERTIES CXX_CLANG_TIDY ""
)
...