我正在一个项目中有几个目录,而我的makefile在所有目录之上。当我更新并重新制作代码/头文件时,它说“什么都不做”。有没有一种方法可以强制make检查所有目录并因此意识到必须重新制造某些组件?干杯
插口
最佳答案
您可以每次强制输入子目录:
SUBDIRS = dir1 dir2
.PHONY: all
all: subdirs final_target
.PHONY: subdirs
subdirs:
for d in $(SUBDIRS); do $(MAKE) -C $$d; done
.PHONY: final_target
final_target:
echo "Do something here..."
这种进入所有子目录的方案实际上非常普遍。