Что означает переменная, определенная в той же строке правила, предназначенная для предварительных условий, таких как "a: x = 0" в GNU Make?
Я видел код, подобный следующему коду в Makefile:
a: x = 0
Что означает эта строка? Это правило или что-то еще?
1 ответ
Решение
Это называется целевой переменной, см.: https://www.gnu.org/software/make/manual/html_node/Target_002dspecific.html
Это дает другое значение переменной внутри данной цели.
Пример использования:
x := 0
a: x := 1
a:
@echo $x
b:
@echo $x
Сейчас:
$ make a
1
$ make b
0