在make文件中,如何展平或迭代多行列表?

时间:2011-11-29 19:17:36

标签: makefile gnu-make

我有一些基本的内容

define URLS
http://www.foo.com/
http://www.bar.com/
http://www.foo1.com/
endef

我怎样才能将它展平,以便它使用空格而不是换行(我尝试用运气来修补$(subst))或者用for循环迭代每个项目?我意识到我可以用不同的方式定义它,但希望有一个很好的干净的单项每行解决方案。

感谢。

2 个答案:

答案 0 :(得分:3)

首先,您需要定义\n,因为您不能按字面意思使用它。

define \n


endef

现在可以使用subst,如下所示:

URLS := $(subst $(\n), ,$(URLS))

答案 1 :(得分:0)

nicely-spaced := $(strip ${URLS})