考虑这个makefile:
srcs = 1.src
%.compiled: create_srcs $(srcs)
@echo $@ depends on: $^
create_srcs:
$(eval srcs = $(srcs) 2.src)
@echo srcs: $(srcs)
%.src:
@echo src: $@
如果执行则输出:
c:\>make file.compiled
srcs: 1.src 2.src
src: 1.src
file.compiled depends on create_srcs 1.src
如何让%.compiled
依赖2.src
?
另外,如果重要的话,在我的真实makefile create_srcs
中解压缩一些可能包含来源的拉链和' srcs'变量定义为srcs = $(shell find ...)
。 %.compiled
不是最终目标,但create_srcs
是第一个目标。