如何在make中发现默认目标?

时间:2018-05-02 14:01:47

标签: gnu-make

我已经看到问题"How does “make” app know default target to build if no target is specified?",这解释了默认目标是第一个没有使用'。'。

如何让告诉我目标是什么?

上下文:我有一个递归的make系统,包含各种makefile。如果我将新目标添加到我的顶级Makefile(或我的常用include),那么它将成为默认目标。我想添加.DEFAULT_GOAL: original-default-target,但我不知道original-default-target

1 个答案:

答案 0 :(得分:1)

运行make -d会产生 lot 的调试输出。如果您首次搜索“更新目标定位条件”,并查看提及的下一个目标,则会显示为默认目标。

例如:

$ make -d | grep -A2 -m1 'goal targets'
Updating goal targets....
Considering target file 'all'.
 File 'all' does not exist.

这意味着,至少对于此Makefile,当前的默认目标是all。然后可以通过将.DEFAULT_GOAL: all添加到顶级Makefile来强制执行此操作。