我的makefile中有一条规则,它使用通配符来获取目录中的所有.c文件:
SRCS_ENC = $(foreach DIR,$(SRC_ENC),$(patsubst $(DIR)/%,%,$(wildcard $(DIR)/*.c)))
现在我想要排除具有特定后缀的所有文件,例如“测试”
function_test.c
function2_test.c
...
如何在makefile中执行此操作?我尝试过滤掉了,但它没有用。
答案 0 :(得分:0)
尝试使用立即分配而不是延迟,并像这样过滤掉:
SRCS_ENC := $(foreach DIR,$(SRC_ENC),$(patsubst $(DIR)/%,%,$(wildcard $(DIR)/*.c)))
SRCS_ENC := $(filter-out, %_test.c, $(SRCS_ENC))