Я пытаюсь сделать это:
Из каталога, выбрать все C
(.c
) файлы, сгенерировать .o
и добавить его в мой конечный целевой исполняемый файл.Файлы C
могут быть добавлены или удалены в любое время, поэтому, когда я запускаю make
для своей цели, нужно выбрать доступные C
файлы из каталога, чтобы скомпилировать и связать с моей целью.* Пока у меня есть следующее:
define test_tgt =
DIR = full/path/to/dir
FILES = $(wildcard $(DIR)/*.c)
OBJS = <rule-to-convert-C-to-O>
endef
get_new_files:
$(eval $(test_tgt))
final-target: get_new_files
$(CC) <other-objs> $(OBJS)
Почему-то это не работает.Я вижу много подобных примеров, но не уверен, что здесь не так.Если этот подход не верен, может кто-нибудь предложить лучший способ сделать это.
TIA.