重构过程中,先重构部分代码,所以需要不编译某些文集
然后使用Makefile的$(filter-out)不编译一部分代码,但是发现并没有剔除
##modules sdk
SDKFILES += $(wildcard IDMSdk/*.cc)
CXXSRCS += $(filter-out IDMSdk/idm_uwb*.cc, $(SDKFILES))
经分析,有可能是需要在$(filter-out)后的所有剔除的文件都需要空格,上面的匹配可能无法作为一个空格隔开的列表呈现(表达不是很好),所以用$(wildcard)先给过滤出来,再剔除
Makefile
##modules sdk
SDKFILES += $(wildcard IDMSdk/*.cc)
FILTEROUT += $(wildcard IDMSdk/idm_uwb*.cc)
CXXSRCS += $(filter-out $(FILTEROUT), $(SDKFILES))