我正在尝试设置clang-tidy
在 C 项目中强制执行命名约定。该项目由多个外部源组成,并使用普通的 makefile 环境,因此没有类似的工具cmake
或bear
可用于生成编译数据库。
这也是我想要的:使用我想clang-tidy
为每个应该检查的文件选择性地调用的自定义环境。
我正在配置该工具,主要用于检查readability-identifier-naming
. 为了测试,我有一个.c
和.h
文件,都在同一个目录中,内容如下:
假人.c
#include "dummy.h"
#include "MISSING_module.h"
// EOF
假人.h
#ifndef _DUMMY_H_
#define _DUMMY_H_
#include <stdlib.h>
// EOF
我正在调用的命令是
clang-tidy dummy.c -checks='-*,readability-identifier-naming' -- -DCMAKE_EXPORT_COMPILE_COMMANDS=ON`
但是,clang-tidy
仍然遵循#include
C 文件中的内容并检查现有标题:
dummy.h:4:10: error: 'stdlib.h' file not found [clang-diagnostic-error]
#include <stdlib.h>
^
Found compiler error(s).
有什么办法可以禁用它吗?clang-diagnostic-error
甚至没有启用检查。或者是否有我应该知道的替代工具来强制执行命名约定?