【问题标题】:Recursive nmake target递归nmake目标
【发布时间】:2009-05-13 02:53:51
【问题描述】:

当通过 $(MAKE) 宏递归调用 nmake 时,如何将命令行中指定的目标传递给新实例?

所以,假设我从命令行执行以下操作:

c:\n清理

我希望对 nmake 的递归调用将“干净”目标传递给新的 nmake 实例。

【问题讨论】:

    标签: visual-studio makefile visual-c++ nmake


    【解决方案1】:

    你可以这样写规则:

    clean all:
        cd dir1 && $(MAKE) $*
        cd dir2 && $(MAKE) $*
    

    $* 将替换为目标名称(本例中为“clean”或“clean”)

    【讨论】:

    • 只是为了评论一个副作用。如果没有指定目标,它将首先运行干净,然后继续运行所有。有效地作为重建。
    【解决方案2】:

    我不确定我是否理解这个问题,但您通常具有规则,因为您执行了 makefile 的特定部分,例如:

    clean:
        cd dir1 && $(MAKE) clean
        cd dir2 && $(MAKE) clean
    
    all:
        cd dir1 && $(MAKE) all
        cd dir2 && $(MAKE) all
    

    如果您的 makefile 中有一些其他设置,最好将其发布,以便我们进行更好的分析。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-01-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-24
      • 1970-01-01
      相关资源
      最近更新 更多