Make变量的扩展

时间:2011-10-04 08:12:58

标签: variables makefile autotools automake

我的Makefile中有两个变量:

archs = i386 x86_64
tarball = foo-i386 foo-x86_64

如您所见,我的第二个变量实际上是基于第一个变量。但我希望像正则表达式扩展一样使用第一个变量,如:

tarball = foo-$(archs)

但它不会这样。这在GNU Make中扩展为:

tarball = foo-i386 x86_64

分配使用tarball变量的archs变量的最佳方法是什么?

1 个答案:

答案 0 :(得分:2)

当你可以依赖GNU make时,foreach函数就是你的朋友。

如果没有,结构

tarball = $(archs:%=foo-%)

也适用于其他一些其他品牌。但是,它仍然在non-compatible list个功能上。