Makefile扩展变量

时间:2010-06-22 20:57:23

标签: makefile gnu-make

我想对可能包含对其他变量的引用的变量执行扩展。我将举例说明:

a = 1
b = 2
c = 3
X = foo bar baz $(foreach x, a b c, $$(value $(x))) qux
$(info $(X))

如果你运行这个makefile,它会打印:

foo bar baz $(value a) $(value b) $(value c) qux

我想知道如何扩展它以便我得到:

foo bar baz 1 2 3 qux

我可以做以下事情:

$(eval X = $(X))

为了接近我想要的,但是这需要我再次重新分配变量。另外,我eval整个变量中的任何内容,这可能不是我想要的。我希望能够做$(expand X)这样的事情,并得到结果文本。

1 个答案:

答案 0 :(得分:1)

X = $(foreach x, a b c, $($(x)))