我的Makefile中有两个变量:
archs = i386 x86_64
tarball = foo-i386 foo-x86_64
如您所见,我的第二个变量实际上是基于第一个变量。但我希望像正则表达式扩展一样使用第一个变量,如:
tarball = foo-$(archs)
但它不会这样。这在GNU Make中扩展为:
tarball = foo-i386 x86_64
分配使用tarball
变量的archs
变量的最佳方法是什么?
答案 0 :(得分:2)
当你可以依赖GNU make时,foreach
函数就是你的朋友。
如果没有,结构
tarball = $(archs:%=foo-%)
也适用于其他一些其他品牌。但是,它仍然在non-compatible list个功能上。