我在Python中有一个C++代码生成器,它生成许多源文件。大多数情况下,只有一个文件发生更改,但由于生成器会重新生成所有文件,因此它们都将重新生成。有没有办法让Python不覆盖文件,或者让cmak使用校验和来查看需要重建的内容,而不仅仅是使用文件日期?输出相同时不覆盖文件的简单方法
我在想这样的事情会很容易在Python:如果我能代替
with open('blah', 'w') as f:
与此:
with open_but_only_overwrite_if_total_output_is_different('blah', 'w') as f:
什么是实现这个目的的一个很好的方式?
您在问cmake或Python是否可以确定文件是否应该被覆盖__before__代码已经在Python脚本中生成了? – jknupp 2012-01-03 21:32:30
不,他问是否可以避免在这种情况下更改文件的修改日期,因为如果修改日期更改,构建系统(CMake)将重建文件,从而使构建时间更长。 – kindall 2012-01-03 21:38:11
啊,现在有道理。 – jknupp 2012-01-03 21:40:56