Makefile 从生成文件中删除依赖项
我们有使用的脚本,这些脚本根据上次运行Makefile的系统使用依赖项填充Makefile 我们如何使Makefile中的Makefile 从生成文件中删除依赖项,makefile,Makefile,我们有使用的脚本,这些脚本根据上次运行Makefile的系统使用依赖项填充Makefile 我们如何使Makefile中的clean目标自动删除gccmakedep添加到Makefile中的依赖项 (我不能在clean目标中有一个命令来搜索“#不要删除”除法器,因为gccmakedep本身会找到该参数,并认为它应该在那里切掉…?)我认为可以让gccmakedep-fdepends.mk将输出生成不同的生成文件。然后,您可以将其包括在内,并根据清除规则删除 -include depends.mk
clean
目标自动删除gccmakedep添加到Makefile中的依赖项
(我不能在
clean
目标中有一个命令来搜索“#不要删除”
除法器,因为gccmakedep本身会找到该参数,并认为它应该在那里切掉…?)我认为可以让gccmakedep-fdepends.mk
将输出生成不同的生成文件。然后,您可以将其包括在内,并根据清除规则删除
-include depends.mk
clean:
@rm -f depends.mk
就我个人而言,我使用cc-MMD-MP
生成.d
依赖项,并将它们包含在Makefile中。它不需要任何额外的工具,您可以清理.d
文件以及对象文件。给你
这也是Scott McPeak的一篇文章,介绍了更多可移植的解决方案和说明。我认为您可以将
gccmakedep-fdepends.mk
输出到不同的生成文件中。然后,您可以将其包括在内,并根据清除规则删除
-include depends.mk
clean:
@rm -f depends.mk
就我个人而言,我使用cc-MMD-MP
生成.d
依赖项,并将它们包含在Makefile中。它不需要任何额外的工具,您可以清理.d
文件以及对象文件。给你
这也是Scott McPeak提供的一个更具可移植性的解决方案和解释。如果可能,请避免修改Makefile(从而转储gccmakedep)。相反,使用外部文件来处理
或者,在清理规则中使用执行清理的脚本(因此不会直接触发
gccmakedep
)如果可能,请避免修改生成文件(从而转储gccmakedep
)。相反,使用外部文件来处理
或者,在清理规则中使用执行清理的脚本(因此不会直接触发
gccmakedep
)clean
在您的示例中不应依赖depends.mk-否则它将在执行清理之前尝试构建depends.mk,这是浪费时间。相反,请按照您的食谱执行@rm-f dependens.mk
,这样,如果文件还不存在,它就不会消亡,并且clean
不依赖任何内容。当然,为什么不呢。这取决于你想做什么。我想对某些人来说,这比说明性的更令人困惑。clean
在您的示例中不应该依赖depends.mk-否则它将在执行clean之前尝试构建depends.mk,这是浪费时间。相反,请按照您的食谱执行@rm-f dependens.mk
,这样,如果文件还不存在,它就不会消亡,并且clean
不依赖任何内容。当然,为什么不呢。这取决于你想做什么。我想对某些人来说,这比说明问题更令人困惑。