1 sources=./test6 ./test9
2 var=$(foreach dir,$(sources),$(MAKE) -C $(dir))
3 all:
4 @echo $(var)
运行:
make -C ./test6 make -C ./test9
完全没达到,运行两目录下的makefile的目的
var=$(foreach dir,$(sources),$(MAKE) -C $(dir);)
需要在$(dir)变量后面加一个分号$(dir);
因为相当于是要执行多条make命令,需要分号来分割
all:
$(var)
去掉@echo, 不然会和第一个make语句连成一个echo语句,这就会造成打印第一个make语句,而仅执行第二make语句