[英]gnu makefile filter a list of source files through a list of folders to ignore
可以说我有以下变量:
SOURCES = folder1/a.c folder1/b.c folder2/c.c folder3/d.c folder3/e.c
FILTERS = folder2 folder3
现在我想设置一个只包含folder1/ac folder1/bc
的变量。 我已经尝试了$(filter-out folder2%,$(SOURCES))
,这确实删除了未打开的folder2项。 那么也许我可以通过这种方式以某种方式循环过滤器?
或者有更好的方法吗?
你可以使用:
OUTPUT := $(filter-out $(addsuffix /%,$(FILTERS)),$(SOURCES))
filter-out
可以使用多个过滤器并将它们全部应用。 我建议您使用/%
而不是仅使用%
这样就不会捕获恰好以目录名称开头的文件名。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.