Экспорт переменных среды в оболочку Makefile
Я хочу немедленно развернуть команду оболочки в Makefile, но я хочу, чтобы команда оболочки имела доступ к переменным среды в Makefile. Если я использую $ (shell ...), он сразу расширяется, но нет доступа к переменным. Если я использую обратные кавычки, расширение не является немедленным, и оно вызывает проблемы для меня позже в Makefile. Мне интересно, есть ли какой-нибудь способ сделать немедленное расширение обратных кавычек или передать текущее окружение команде $ (shell).
Например, следующий make-файл:
SOME_VAR := some_val
export SOME_VAR
VAR1 := `echo $SOME_VAR`
export VAR1
VAR2 := `echo $VAR1`
all:
@echo VAR1=$(VAR1)
@echo VAR2=$(VAR2)
Будет выводить:
~/tmp/t2> make
VAR1=some_val
VAR2=`echo $SOME_VAR`
Где я хочу это напечатать "VAR2 = some_val". Реальный пример немного сложнее (переменные среды наследуются от родительских make-файлов, и я пытаюсь использовать скрипт perl для редактирования переменных), но принцип тот же.
Любая помощь приветствуется.