我正在编写一个makefile。在我的用例中,变量的名称存储在另一个变量中。我正在尝试从功能评估它,但评估不正确。
在代码中,我希望“ devinit”评估为UART_init。我的代码有什么错误?
(map(.type) | index("bird")) as $i
| if $i then triple($i) else empty end
答案 0 :(得分:1)
使用两次变量替换,不要忘记.ONESHELL:
(或到处都附加;\<CR>
)
VAR=MYDEV
MYDEV_init=UART_init
define create_kernels_c
echo GGGGG $(VAR)
devinit=$($(VAR)_init)
echo devinit $$devinit
endef
.ONESHELL:
all:
@$(call create_kernels_c)