【发布时间】:2009-05-13 02:53:51
【问题描述】:
当通过 $(MAKE) 宏递归调用 nmake 时,如何将命令行中指定的目标传递给新实例?
所以,假设我从命令行执行以下操作:
c:\n清理
我希望对 nmake 的递归调用将“干净”目标传递给新的 nmake 实例。
【问题讨论】:
标签: visual-studio makefile visual-c++ nmake
当通过 $(MAKE) 宏递归调用 nmake 时,如何将命令行中指定的目标传递给新实例?
所以,假设我从命令行执行以下操作:
c:\n清理
我希望对 nmake 的递归调用将“干净”目标传递给新的 nmake 实例。
【问题讨论】:
标签: visual-studio makefile visual-c++ nmake
你可以这样写规则:
clean all:
cd dir1 && $(MAKE) $*
cd dir2 && $(MAKE) $*
$* 将替换为目标名称(本例中为“clean”或“clean”)
【讨论】:
我不确定我是否理解这个问题,但您通常具有规则,因为您执行了 makefile 的特定部分,例如:
clean:
cd dir1 && $(MAKE) clean
cd dir2 && $(MAKE) clean
all:
cd dir1 && $(MAKE) all
cd dir2 && $(MAKE) all
如果您的 makefile 中有一些其他设置,最好将其发布,以便我们进行更好的分析。
【讨论】: