Ist es möglich, Variable Expansion in meinem Makefile
für einen bestimmten Abschnitt zu "deaktivieren"?Dollars in Makefile Umgebungsvariablen
Hier ist ein Beispiel für das Problem das ich habe:
print_command:
@echo '$(COMMAND)'
Und hier ist der Ausgang Ich erhalte:
$ 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
Und was würde ich bekommen:
$ 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
Ist es möglich, dies zu tun, ohne einen Doppel-Dollar wie folgt zu verwenden:
$ 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
In seiner einfachsten Form suche ich nach dem genauen Inhalt der Variablen COMMAND
ohne make
Mangling es.
Das ist perfekt, danke! –
Ist es möglich, es in der Befehlszeile ohne 'export' zu übergeben (d. H. Nach' make', aber ohne doppelten Dollar?) Ich nehme an, dass es nicht ist, da es die Definition im Makefile selbst hat. –