如何检测由于包含而导致的Makefile重新评估

时间:2018-10-24 20:45:54

标签: makefile gnu-make

我有一个Makefile(GNU make),由于include,它会在某些情况下重新评估自身。我希望能够在评估过程中和规则执行之前确定这是第一次“通过”还是第二次“通过”(重新评估)。有办法吗?

我尝试导出变量,但这似乎不起作用(似乎重新评估没有被视为子产品,我认为这很有意义)。

我正在重新构造Makefile以删除重新评估,但是对于我的应用程序来说这并不简单,我希望可以进行短期修复...

1 个答案:

答案 0 :(得分:1)

您是在说如果在第一次尝试中已经重新制作了任何包含的文件(带有include)时,make会自行重启吗?如果是这样,您正在寻找MAKE_RESTARTS特殊变量,该变量(引用手册)will contain the number of times this instance has restarted