如何在GNUmakefile中检索参数

时间:2014-06-11 21:32:51

标签: makefile

不确定是否有人知道这个问题的答案,我环顾四周,找不到解决方案。我有一个如下所示的makefile:

    MODELS := abc def
    all:    all_models
    all_models: $(foreach m,$(MODELS),test$(m))

    test%:
        echo $(subst test,,$@)

    Output:
    echo abc
    abc
    echo def
    def

我知道$(m)abc和def是通过test%传递的:我的问题是如果对于某些文件依赖性原因,我必须硬编码测试%:到类似“test:”的东西我如何检索参数,即abc和def?例如,新子句就像

    test:
        # how do I retrieve abc and def from MODELS ?

感谢

1 个答案:

答案 0 :(得分:0)

我仍然认为你没有要求你真正想要的东西,但是这里有。

在文件models中:

MODELS := abc def ghi jkl

在makefile中:

include models

test:
    @echo do something with $(word 1,$(MODELS))
    @echo MODELS := $(wordlist 2,$(words $(MODELS)), $(MODELS)) > models