我有一个cpp
文件列表,我想从我的Makefile
中排除。我不能像此question一样应用通配符;相反,我想排除特定文件名的列表。我怎么做?
这似乎不起作用。
SRCDIR = ../src
EXCLUDE := file1.cpp,file2.cpp,file3.cpp
SRCS = $(shell find $(SRCDIR) -name '*.cpp')
SRCS := $(filter-out $(SRCDIR)/$(EXCLUDE) , $(SRCS))
查看documentation,可以将多个文件过滤为:
objects=main1.o foo.o main2.o bar.o
mains=main1.o main2.o
$(filter-out $(mains),$(objects))
所以我的问题几乎变成是否有一种方法可以通过从变量../src/file1.cpp
中加载值来排除../src/file2.cpp
,../src/file3.cpp
,SRCDIR
?
答案 0 :(得分:1)
您可能想要类似的东西:
SRCS := $(filter-out $(EXCLUDE:%=$(SRCDIR)/%),$(SRCS))