메이크파일에서 변수의 값은 다른 변수의 이름입니다. 타겟 안에 어떻게 넣나요?
예를 들어:
my_variable := Hello
target:
@var_name="my_variable" ; \
result=$($(var_name)) ; \
echo $$result
해야 result
한다 Hello
.
또는 또 다른 예:
VALUES123 := 1 2 3
CLIENTS_1_IP := 10.100
CLIENTS_2_IP := 10.100
CLIENTS_3_IP := 10.100
cll:
@for value in ${VALUES123}; do \
var_name="CLIENTS_$${value}_IP"; \
echo $$var_name; \
$(eval CLIENT := $(value $$(var_name))) \
echo $$CLIENT; \
done
대체할 게 필요해
$(eval CLIENT := $(value $$(var_name)))
이것은 작동합니다.