Я хотел бы применить функцию notdir к списку файлов, которые я получаю в результате совпадения с подстановочными знаками. Хотя '$(notdir $(wildcard dir/*.tst))' работает, мне не удается сначала сохранить список в переменной ("FILES" в Makefile ниже), которая затем обрабатывается $(notdir... ). Использование переменной напрямую ('$(notdir $(FILES))') приводит к возврату подстановочного знака, использование значения ('$(notdir $(value $(FILES)))') дает пустой результат.
.PHONY: show
FILES := dir/*.tst
FILES2 := dir/a.tst dir/b.tst
#NAMES := $(notdir $(FILES))
NAMES1 := $(notdir $(value $(FILES)))
NAMES2 := $(notdir $(FILES2))
NAMES3 := $(notdir $(wildcard dir/*.tst))
show:
@echo "FILES: " $(FILES)
@echo "NAMES1: " $(NAMES1)
@echo "NAMES2: " $(NAMES2)
@echo "NAMES3: " $(NAMES3)
Я также пробовал $(notdir $(eval $$(FILES))), но это приводит к ошибке «отсутствует разделитель».
Что мне здесь не хватает? Я ожидал, что это значение выполнит эту работу...