我是Cmake / protobuf域的新手
在我的CMakeList.txt中,set(CMAKE_CXX_CLANG_TIDY "clang-tidy;-checks=google-*,cppcoreguidelines-*")
用于短绒警告。
我还包括用于protobuf的Catkinized gRPC软件包
find_package(catkin REQUIRED COMPONENTS grpc)
generate_proto(......)
[编译该项目时,我看到file_name.pb.cc
文件的很多警告
有没有办法为自动生成的文件或特定目标禁用Clang Linter?
由于cmake会生成每个clang-tidy激活目标的所有源文件的列表,并将其传递给clang-tidys命令行,因此从clang-tidy中排除特定的源文件相对比较困难。
如果仅对一个或多个特定目标启用clang-tidy并生成自己的protobuf文件,则可以将protobuf内容分离到静态库中,而无需对该目标启用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 ""
)