Makefile可以包含'根据目标动态设置?

时间:2014-08-27 19:07:02

标签: makefile gnu-make

我们说我有两个档案 文件简介/ A.mk:

NAME=A
VERSION=1.0

档案资料/ B.mk:

NAME=A
VERSION=2.0

Makefile可能如下所示:

BASE_DIR:=$(shell sh -c 'pwd')
include $(BASE_DIR)/profile/<**NOT_SURE_WHAT_TO_PUT_HERE**>.mk

A B:
    @echo $(VERSION)

我想我想要的是能够&#34;来源&#34;或&#34;包括&#34;只有基于make命令的* .mk文件:

make A

make B

因为我在* .mk文件中都使用了NAME和VERSION,所以我不能做&#34; include&#34;两个* .mk文件。两个文件的包含都会生成&#34;覆盖先前的分配&#34;警告。

在shell脚本中, NOT_SURE_WHAT_TO_PUT_HERE $ 1 。是否存在变量/宏/某些内容,我根据目标名称使用目标名称包含* .mk? (GNU Make 3.81,Ubuntu 13.04)

1 个答案:

答案 0 :(得分:2)

您可以使用变量$(MAKECMDGOALS)