Я создаю GNU Makefile, и у меня возникает следующая проблема:
У меня есть список исключаемых файлов (и каталогов), которые необходимо исключить из списка источников.Теперь удаление перечисленных файлов из списка не является большой проблемой.Я просто делаю следующее:
NEWSRC := $(shell find $(SOURCEDIR) -name '*.c')
EXCLUDES := $(shell cat ./$(TARGET12)_exclude.txt) #TARGET12 is a Makefile parameter
CSRC := $(filter-out $(EXCLUDES),$(NEWSRC))
Проблема в том, что ИСКЛЮЧЕНИЯ содержат каталог (не имя файла), и все имена файлов в одном каталоге также должны быть исключены.Например, если единственным членом переменной EXCLUDES является ../sources/filesystem/SomePath, то все файлы в этом каталоге также должны быть исключены из CSRC.Например, эти файлы могут быть:
../sources/filesystem/SomePath/something.c
../sources/filesystem/SomePath/src/something.c
../sources/filesystem/SomePath/Some1/src/something.c
Знаете ли вы, как это можно решить внутри Makefile?
Заранее спасибо!