【发布时间】:2012-06-20 11:45:49
【问题描述】:
由于 make 知道创建目标的所有依赖项,因此它知道(几乎)所有中间工件。是否有可以“回滚”或“取消”目标的 make 版本?
(我知道它会删除由隐式规则创建的目标)
【问题讨论】:
由于 make 知道创建目标的所有依赖项,因此它知道(几乎)所有中间工件。是否有可以“回滚”或“取消”目标的 make 版本?
(我知道它会删除由隐式规则创建的目标)
【问题讨论】:
大多数 Makefile 提供 clean 目标,它会删除所有生成的文件。另外,autoconf-automake系统提供distclean,同样会删除configure生成的文件。
但是,这些不是自动目标; makefile 生成系统将生成的文件列表提供给make。一般来说,make 不会跟踪它生成了哪些文件,因此它无法区分真正的源文件(它们是依赖项)和中间文件(它们也是依赖项)。甚至依赖图的叶子节点也不能用于区分,因为stamp文件通常也没有依赖关系。
【讨论】: