是否可以在 Makefile 中打印变量并相应地更改它们?
Is it possible to print variables and change them consequently in Makefile?
我有以下 Makefile:
all: print1 print2
world=world1
print1:
@echo $(world)
world=world2
print2:
@echo $(world)
.PHONY: all print1 print2
当 运行 make
我期望得到:
world1
world2
但我得到了:
world2
world2
仅使用变量 world
是否可以获得预期的输出?
Target-specific variable values 就是为此而生的。
print1: world=world1
print1:
@echo $(world)
print2: world=world2
print2:
@echo $(world)
如果食谱相同,则可以组合规则:
print1: world=world1
print2: world=world2
print1 print2:
@echo $(world)
我有以下 Makefile:
all: print1 print2
world=world1
print1:
@echo $(world)
world=world2
print2:
@echo $(world)
.PHONY: all print1 print2
当 运行 make
我期望得到:
world1
world2
但我得到了:
world2
world2
仅使用变量 world
是否可以获得预期的输出?
Target-specific variable values 就是为此而生的。
print1: world=world1
print1:
@echo $(world)
print2: world=world2
print2:
@echo $(world)
如果食谱相同,则可以组合规则:
print1: world=world1
print2: world=world2
print1 print2:
@echo $(world)