一个大项目通常有一个复杂的 Makefile 系统。有很多变量定义和目标先决条件依赖分散在不同的 Makefile 中。有什么方便的方法可以打印所有先决条件并为目标构建规则?
具体来说,两个问题:
问题 1
假设我有四个 Makefile:
生成文件1:
p: a b
[some rule]
生成文件2:
q: c d
[some rule]
生成文件3:
r: e f
[some rule]
生成文件:
all: p q r
[some rule]
我可以调用一些命令来获得类似于以下的输出吗?
all: a b c d e f
[rule 1]
[rule 2]
[rule 3]
......
问题2
而且,如果我要检查的实体只是一个普通的二进制文件而不是 Makefile 中指定的目标怎么办?例如,如何获得sha1sum
coreutils 的先决条件和构建规则?(很明显,sha1sum
在 coreutils 的 Makefile 中没有目标名称。)
我查看了 的帮助和手册make
,但无济于事。也许我没有弄清楚谷歌搜索的正确关键字。谁能帮我?谢谢!