Clang-Tidy llvm-header-guard目录配置

时间:2017-09-28 11:57:57

标签: c++ clang llvm llvm-clang include-guards

使用clang-tidy运行静态分析时,有没有办法在建议的llvm-header-guard字符串中删除建议的计算机特定路径?

例如,文件的建议标题保护(cls / math / matrix.hpp)是:     _USERS_NAME_DESKTOP_PROJECT_SRC_CLS_MATH_MATRIX_HPP

但为了避免使这个特定于我的电脑,它应该只是:     _PROJECT_SRC_CLS_MATH_MATRIX_HPP

有没有办法配置clang-tidy,以便它建议从/ project /目录开始而不是/ users /目录?

我正在使用clang 5.0.0,从cmake运行。

1 个答案:

答案 0 :(得分:0)

我也有这个问题很久了,终于弄清楚了,至少对于公共对象来说:clang-tidy假定标题在一个名为include的目录中。

因此,如果您的标头类似于/home/me/myproject/include/myproject/header.h,则它将正常工作并建议使用MYPROJECT_HEADER_H。如果找不到include目录作为根目录,则它将退回到绝对路径。

因此,库的解决方案是使用该结构(无论如何这可能是一个好主意)。我仍然不确定项目源文件中的标题。