使 Makefile 成为其自身规则之一的依赖项有什么好处吗?

Is there any benefit to making a Makefile a dependency of one of its own rules?

前几天我在 Makefile 中看到了这个:

%.elf: $(OBJS) $(LDSCRIPT) Makefile
    $(Q)$(LD) -o $(*).elf $(OBJS) $(LDFLAGS)

这个有什么用?

假设此规则是所有其他规则的 "parent"(即所有目标都需要此规则),将 Makefile 本身作为依赖项可确保如果 $(OBJS) 被修改,无论 .elf 输出的状态如何,您的目标都将重新链接,因为 Makefile 的最后修改日期将发生变化。

有点像自我修复机制