首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基于文件内容修改而不是修改日期进行重建

基于文件内容修改而不是修改日期进行重建
EN

Stack Overflow用户
提问于 2021-06-30 21:27:28
回答 1查看 31关注 0票数 0

我们如何将代码生成集成到构建系统中?

对于具有代码生成功能的源代码,尽管更改了一行代码生成以创建新生成的文件,但会重新生成所有代码。在这个新生成的代码中,尽管大部分代码保持不变,但构建系统(Make)只查看修改日期,并决定重新编译所有生成的代码。make/cmake/bazel是否提供了基于文件更改而不是修改日期来检查依赖关系的工具?

是否有其他构建系统考虑生成的代码是否需要重新编译,而不是使用修改日期,而是使用文件更改本身?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-06-30 21:47:27

Bazel使用散列来确定必须执行的操作。例如,您可以通过添加新的空行来修改C++文件。文件将被重新编译,但不会触发下一步操作(如链接库),因为编译的输出将保持不变(可能是因为它依赖于使用的编译器)。That movie is a good introduction

Make/忍者一定要使用时间戳。CMake并不关心,因为整个文件比较机制被委托给底层构建系统

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68195723

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档