Правила шаблонов являются обобщением идеи правил суффиксов. Если и цель и зависимость содержат символ % , GNU-версия make подставляет любую часть имени существующего файла. Например, стандартное правило суффиксов:
$(сс) -о $@ $<
может быть записано следующим правилом шаблонов: $(сс) -о $е $<
make
Модификаторы макросов
D Имя каталога из любого имени внутреннего макроса кроме $?. Корректно следующее использование:
$(«D) $$(90) $(?D) $(<D) $(XD) $(®D) $(-D)
F Имя файла (без пути) из любого имени внутреннего макроса кроме $?. Корректны следующие записи:
$(*F) $$(®F) $(?F) $(<F) $(XF) $(@F) $("F)
Функции
$(subst from, to, string)
Заменить все вхождения from на to в строке string.
make
$(patsubstpattern, to, string)
Аналогично subst, но считать символ % внутри шаблона
pattern метасимволом. Заменяет каждое соответствие
шаблону в строке string на to.
$(strip string)
Удалить все лишние пробелы.
$(findstring substring, mainstring)
Вернуть подстроку substring, если она найдена в строке
mainstring, иначе вернуть нуль.
$(mterpattern, string)
Вернуть те слова из строки string, которые соответствуют
хотя бы одному слову шаблона pattern. Шаблоны могут
включать символ маски % .
$(fi!ter-out pattern, string)
Удалить из строки string слова, которые соответствуют
хотя бы одному слову шаблона pattern. Шаблоны могут
включать символ маски % .
$(sort list)
Вернуть список list, отсортированный в лексикографи-
ческом порядке.
$(dir list)
Вернуть имена каталогов (все символы до последнего слэ-
ша) всех имен файлов из списка list.
$(notdir list)
Вернуть все имена файлов (символы после последнего
слэша) из списка list.
$(suffix list)
Вернуть суффиксы имен (символы после последней точ-
ки)изсписка/гя?.
$(basename list)
Для каждого элемента списка (имен файлов) вернуть
подстроку до суффикса (все символы до последней точки).
$(addsuffix suffix, list)
Вернуть список имен файлов, добавив к каждому имени
суффикс.
$(addprefixprefix, list)
Вернуть список имен файлов, добавив к каждому имени
префикс.
$(join listl, Ust2)
Вернуть список, полученный векторной конкатенацией аргументов. Например, $0oin а Ь, .с .о) вернет а.с Ь.о.
$(word п, string)
Вернуть л-ное слово строки string. $(words string)
Вернуть количество слов в строке. $(firstword list)
Вернуть первое слово из списка list.
$(wildcard pattern)
Вернуть список файлов из текущего каталога, соответствующих маске pattern.
$(origin variable)
Вернуть одну из следующих строк, описывающих, как была определена переменная variable: undefined, default, environment, environment override, file, command line, override или automatic.
$(shell command)
<< Назад В начало Далее >> |