合并Makefile中的两个列表

时间:2014-08-27 14:15:41

标签: makefile

我在makefile中有以下两个列表:

SERVERS=172.16.0.117 172.16.0.147
PORTS=1600 1601

我希望新列表如下

172.16.0.117-1600 172.16.0.17-1601 172.16.0.147-1600 172.16.0.147-1601

我不知道我做错了什么。你能帮帮我吗?请查看makefile源代码和输出。提前谢谢。

Makefile源代码:

SERVERS=172.16.0.117 172.16.0.147
PORTS=1600 1601

SERVER=$(addprefix Connect-to-, $(SERVERS))
PORT=$(addprefix $(SERVER)-, $(PORTS))

testall:
        echo "PORTS - $(PORT)"

Output of makefile:
#make
echo "PORTS - Connect-to-172.16.0.117 Connect-to-172.16.0.147-1600 Connect-to-172.16.0.117 Connect-to-172.16.0.147-1601"
PORTS - Connect-to-172.16.0.117 Connect-to-172.16.0.147-1600 Connect-to-172.16.0.117 Connect-to-172.16.0.147-1601

1 个答案:

答案 0 :(得分:1)

这样的东西?

PORT := $(foreach p,$(PORTS),$(patsubst %,%-$p,$(SERVERS)))