当前位置:  开发笔记 > 运维 > 正文

当有变化时,如何在调用子构建时检查依赖项?

如何解决《当有变化时,如何在调用子构建时检查依赖项?》经验,为你挑选了1个好方法。

如果我有一个调用另一个makefile的makefile,如何让master makefile正确检查下级makefile的依赖项是否已更改?

例如,如果我有规则

server:
     @cd $(SERVERDIR) && $(MAKE)

这会在我构建可执行文件"server"的子目录中调用make.但是,如果我更改组成服务器的其中一个文件,则父make不会看到更改并拒绝重建服务器 - "make:`server'是最新的."

如何让master makefile正确检测其中一个相关文件(例如$(SERVERDIR)/server.c)的变化?



1> mbyrne215..:

看起来你想要使用虚假的目标

.PHONY: server
server:
     @cd $(SERVERDIR) && $(MAKE)

还有的假目标的详细说明在这里,但简短的描述是你告诉生成文件永远不会有一个与此服务器的目标相对应的文件,因此它不会考虑服务器上的日期是否有目录中的文件名为server.


这是您的子makefile的责任.
推荐阅读
虎仔球妈_459
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有