skywind3000 / emake

你见过的最简单的 GCC/CLANG 项目构建工具,定义式构建,比命令式更简单
GNU General Public License v2.0
684 stars 111 forks source link

c文件依赖的头文件搜索问题 #10

Open Han40 opened 5 years ago

Han40 commented 5 years ago

你好,我发现你这边的设计可能存在缺陷,比如:当我的编译选项中添加了头文件引用的目录inc: dir 1,dir2。 当我改了里面的头文件的内容应该是不支持 增量编译的,无法触发 依赖这些头文件的。 因为我分析了你的代码,貌似只支持 搜索到与c文件同一目录下的头文件 依赖关系

skywind3000 commented 5 years ago

不是的,你 C 代码里:

#include "../include/foo.h"

也能正常分析出来,所有双引号的相对路径都可以分析出来。

Han40 commented 5 years ago

可是一般编译选项中加了-I选项,后跟路径,源代码里一般不加绝对路径了,只需要include “foo.h” 由于我是汽车行业的,一般的c代码都是自动生成的,没有绝对路径引用

skywind3000 commented 5 years ago

好吧,这么写就没法分析到了,等我有空改成 gcc -MM 来分析头文件依赖。