我有一个第三方的makefile,我想(T1)不建,直到另一个目标之一,自定义目标(T2)首先建造。 通常,这将通过使T2 T1的先决条件来完成。 但T1使用$ ^在其规则之一..所以,通过增加的前提下,我最终破坏构建...什么我有是这样的:
T1: x y z T2
$(MAKE) -j $^;
# fails because T2 should not be passed to the make!!!
.PHONY: T2
T2:
#do some linking and prep for T1
是否有保证T2在T1之前运行的好办法? (注:上面的例子实际上是由一个位简化T1实际上是Linux内核生成文件内的vmlinux目标,所以重写它不仅困难,它使代码非便携式另外,我无法之前运行T2。呼吁作出内核由于一些其他依赖)。