我应该使用.PHONY与否?

时间:2015-04-13 08:45:15

标签: makefile

我正在使用makefile来运行测试。我不确定使用.PHONY。我已阅读此帖:What is the purpose of .PHONY in a makefile?,但我仍不确定。

我有以下makefile:

```

test:
    @# Clear console log before we start.
    @clear

    # Make sure we are not having too much modules.
    @npm prune

    # Make sure we have the required modules.
    @npm install

    @# Clear the console, so we only see the test results.
    @clear

    # Run the test.
    @./node_modules/.bin/mocha-casperjs test.js --reporter=spec

```

我的make test命令不会生成任何新文件。我应该使用.PHONY: test吗?但更重要的是,为什么呢? (或者为什么不呢?)

谢谢!

Malcolm Kindermans

1 个答案:

答案 0 :(得分:0)

感谢@Wintermute我得到了我的问题的答案。他评论道:

  

如果你删除了它们之前的标签,它们也没有出现 - 那么它们就会发表评论而不是shell评论。无论如何,这个问题似乎在您发布的链接后面得到了相当广泛的回答。测试应该是假的,以便触摸测试; make test并不声称测试是最新的。到底还有什么不清楚?

所以答案是:“是的,我需要将test添加到.PHONY,因为执行命令touch test会破坏此make命令。