我有一个程序链接到一个也在开发过程中的库。我想在库更改时重新链接我的程序(因此在我的先决条件列表中有.a
文件,但我也希望能够使用$^
自动变量(或类似的东西)它)列出链接器调用中的所有其他目标。我也可以将makefile本身列为某些目标的依赖项,以确保在我更改makefile时重新编译它们。
我是否可以通过某种方式将特定文件标记为依赖项而不将其显示在$^
等自动变量中?
答案 0 :(得分:4)
我不知道有什么方法可以修改$^
本身,但GNUMake有一些好functions for manipulating text,例如filter-out
:
foo: bar baz quartz.a Makefile
@echo I want $(filter-out %.a Makefile, $^), not $(filter %.a Makefile, $^)