Есть ли способ удалить префикс из строки (путь в моем случае) в make
?
В качестве примера предположим, что у меня есть строка:
FILES = a/b/c.d a/b/e.f
Я хочу удалить a/
и оставить b/c.d b/e.f
Я попытался использовать различные комбинации dir
, notdir
и basename
из GNU make manual, но ни один из них не выглядит обеспечивают хорошее решение.
$(dir $(FILE)) # a/b a/b
$(notdir $(FILE)) # c.d e.f
$(basename $(FILE)) # a/b/c a/b/e
Единственный способ, которым я нашел это до сих пор:
$( join $(basename $(dir $(FILE))), $(notdir $(FILE)) )
Это действительно уродливое и длинное. Мне действительно нужна какая-то функция $(removeprefix ...)
. Предполагая, что я знаю, что префикс (a/
) должен быть удален, можно ли это сделать с помощью каких-либо манипуляций с строкой?