-
如题,现有自定义的语言和相应编译器可以输出gcc格式的依赖,编译生成产物直接放在target:targetdir()不生成.obj也不进行链接。现试图使用 以下是问题:
|
Beta Was this translation helpful? Give feedback.
Replies: 2 comments 1 reply
-
而且同一个源文件有多个编译产物,set_depmtime 可以设置成最后编译的那个,set_depcache怎么设置呢 |
Beta Was this translation helpful? Give feedback.
-
走 batchcmds 是批处理命令式的,对于编译 deps 生成提取而言,其实不适用,因为添加这些命令的过程,其实还没执行它,也没没法通过 -MMD 运行结果解析参数,你应该用 on_build_file + os.run + depend.on_changed()
add_depfiles 添加当前 batchcmds 命令的依赖文件,这些文件中,任意一个文件更新,都会触发执行 set_depcache 就是保持依赖信息的文件 .d ,是可选的,如果 dependfile (*.d) 文件没有指定,会自动根据所有 depfiles 生成一个估计路径的临时文件 set_depmtime 设置最近一次的更新时间,用于跟 depfiles 的 mtime 进行判断,是否 depfiles 更新了,这个是可选的,默认会使用 mtime(dependfile),不过这个是一个 lua table,保存了 gcc deps info, depfiles 信息,还有 depvaules 等各种依赖信息。
目前没对外开放,里面也没几行代码,你可以扣出来或者自己解析下。。要用的话,有概率以后被 broken |
Beta Was this translation helpful? Give feedback.
走 batchcmds 是批处理命令式的,对于编译 deps 生成提取而言,其实不适用,因为添加这些命令的过程,其实还没执行它,也没没法通过 -MMD 运行结果解析参数,你应该用 on_build_file + os.run + depend.on_changed()
add_depfiles 添加当前 batchcmds 命令的依赖文件,这些文件中,任意一个文件更新,都会触发执行
set_depcache 就是保持依赖信息的文件 .d ,是可选的,如果 dependfile (*.d) 文件没有指定,会自动根据所有 depfiles 生成一个估计路径的临时文件
set_depmtime 设置最近一次的更新时间,用于跟 depfiles 的 mtime 进行判断,是否 depfiles 更新了,这个是可选的,默认会使用 mtime(dependfile),不过这个是一个 lua table,保存了 gcc deps info, depfiles 信息,还有 depvaules 等各种依赖信息。
目前没对外开放,里面也没几行代码,你可以扣出来或者自己解析下。。要用的话,有概率以后被 broken