Страницы

Поиск по вопросам

вторник, 27 ноября 2018 г.

Переменные окружения в makefile

Добрый день, возможно ли использовать переменные окружения в makefile?
Если возможно - приведите пример.


Ответ

разумеется, возможно
переменные окружения преобразуются во внутренние переменные программы, и к их значениям можно обращаться в форме $(имя), а также переопределять эти значения стандартными средствами:
имя=значение

стоит также добавить, что внутри рецептов
цель ...: пререквизит ... рецепт ...
которые выполняются оболочкой (а также и в правой части присвоений имя=значение, но не внутри целей или пререквизитов), к переменным окружения, так же, как и к переменным самой оболочки, можно обращаться точно так же, как это и просходит внутри программ оболочки. только требуется «удвоить» символ $, чтобы программа make могла отличить обращение к своей внутренней переменной от обращения к переменной оболочки:
$(x) # обращение к внутренней переменной x программы make $x # альтернативная запись обращения к той же переменной, # допустимая в случае, когда имя переменной состоит из одного символа $$x # обращение к внутренней переменной оболочки x $$xyz # обращение к внутренней переменной оболочки xyz

Комментариев нет:

Отправить комментарий