繁体   English   中英

gnu makefile通过要忽略的文件夹列表过滤源文件列表

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM