1、语法
$(foreach var , list, text)
函数解释:把参数list中的单词逐一取出来放到var所指的变量中,然后再执行text所包含的表达式。每一次text会返回一个字符串,循环过程中,text所返回的每一个字符串以空格隔开。最后结束循环时,text所返回的每个字符串所组成的整个字符将会是foreach函数的返回值。
例子:
‘’’
names: = test main log caffe
files := $(foreach n , $(name), $(n).o )
‘’’
输出files的值为:“test.o main.o log.o caffe,o”
使用举例:
删除编译files变量内的所有可执行文件时产生的.o文件
files=main.exe ./a/a.exe b.exe
all:
echo $(files);
rm -f $(foreach i,$(shell echo $(files) | sed s/.exe//g),$(i).o)