Можно ли «отключить» расширение переменной в моем Makefile
для определенного раздела?Доллары в переменных среды Makefile
Вот пример меня вопрос:
print_command:
@echo '$(COMMAND)'
А вот выход я получаю:
$ export COMMAND='My favourite shell is $SHELL'
$ make print_command
My favourite shell is HELL
$ make print_command COMMAND='Welcome to $SHELL'
Welcome to HELL
И то, что я хотел бы получить:
$ export COMMAND='My favourite shell is $SHELL'
$ make print_command
My favourite shell is $SHELL
$ make print_command COMMAND='Welcome to $SHELL'
Welcome to $SHELL
Можно ли это сделать без использования двойного доллара, например:
$ export COMMAND='My favourite shell is $$SHELL'
$ make print_command
My favourite shell is $SHELL
$ make print_command COMMAND='Welcome to $$SHELL'
Welcome to $SHELL
В его простейшей форме я ищу, чтобы направить точное содержимое переменной COMMAND
без make
, манипулируя им.
Это прекрасно, спасибо! –
Можно ли передать его в командной строке без 'export' (т. Е. После' make', но все же без двойного доллара? Я бы предположил, что это не так, поскольку это эквивалентно определению в 'Makefile'. –