文章目录
filter与filter-out 介绍
filter
、filter-out
是在Makefile中常用的函数。
filter:这个函数接受两个参数,第一个参数是一个模式列表,第二个参数是一个单词列表。它会返回与模式列表匹配的所有单词。例如:
FOO = foo1.c foo2.c bar.c
BAR = $(filter foo%.c, $(FOO))
all:
@echo $(BAR)
执行make all后,会在命令行中打印foo1.c
foo2.c
。
[04:52:45](*^~^*) ~/workbase/test> make all
foo1.c foo2.c
filter-out:这个函数和filter函数的功能正好相反,它返回与模式列表不匹配的所有单词。例如:
FOO = foo1.c foo2.c bar.c
BAR = $(filter-out foo%.c, $(FOO))
all:
@echo $(BAR)
执行make all
后,会在命令行中打印bar.c
。
[04:53:45](*^~^*) ~/workbase/test> make all
bar.c