Makefile 创建不受更改监控的依赖项

Makefile 创建不受更改监控的依赖项,makefile,gnu-make,Makefile,Gnu Make,我试图编写一个生成规则,粗略地说,“如果需要构建目标,也要构建预请求。但是,不要重建目标,因为预请求会发生变化。” 现在我正在使用这个黑客: target: otherprereqs $(MAKE) prereq RECIPE 有更好的方法吗?好吧,我想我知道你的意思。如果您的GNUMake版本足够新,您可以使用: 这毫无意义。根据你的攻击,Make应该重建target,即使prereq发生了变化。只有在其他prereq发生变化时。prereq更改不应阻止构建目标,但不应足以导致它

我试图编写一个生成规则,粗略地说,“如果需要构建目标,也要构建预请求。但是,不要重建目标,因为预请求会发生变化。”

现在我正在使用这个黑客:

target: otherprereqs
   $(MAKE) prereq
   RECIPE

有更好的方法吗?

好吧,我想我知道你的意思。如果您的GNUMake版本足够新,您可以使用:


这毫无意义。根据你的攻击,Make应该重建
target
,即使
prereq
发生了变化。只有在其他prereq发生变化时。prereq更改不应阻止构建目标,但不应足以导致它。谢谢,这正是我想要的。哦,对不起,我收回了它。文档中的描述有点混乱。如果需要,这将生成prereq,但可能不会生成目标。我想要的东西,将建立prereq只有当目标是建立。在这种情况下,你的黑客大约是最好的,你可以做的。(请注意,不需要调用
$(MAKE)
,只需输入prereq的配方即可。)
target: otherprereqs | prereq
    RECIPE