覆盖 Makefile 变量
Override Makefile variable
尝试从命令行 make option_one=hi
覆盖 Makefile 中的 option_one
变量。但输出显示变量未被覆盖。我做错了什么?
Makefile 内容:
override option_one = did_override
all:
echo $(option_one)
命令输出:
echo did_override
did_override
由...
Trying override option_one
variable in Makefile from command line make option_one=hi
...您的意思似乎是希望命令行上指定的值成为所使用的值,而不是 makefile 中指定的值。那就是 标准 行为。您通过为 in-makefile 赋值指定 override
来阻止它,这会导致 makefile 中的赋值覆盖命令行上给出的任何值,这与您想要的完全相反。只是放下那个:
option_one = from_makefile
all:
echo $(option_one)
产生:
> make
echo from_makefile
from_makefile
> make option_one=hi
echo hi
hi
尝试从命令行 make option_one=hi
覆盖 Makefile 中的 option_one
变量。但输出显示变量未被覆盖。我做错了什么?
Makefile 内容:
override option_one = did_override
all:
echo $(option_one)
命令输出:
echo did_override
did_override
由...
Trying override
option_one
variable in Makefile from command linemake option_one=hi
...您的意思似乎是希望命令行上指定的值成为所使用的值,而不是 makefile 中指定的值。那就是 标准 行为。您通过为 in-makefile 赋值指定 override
来阻止它,这会导致 makefile 中的赋值覆盖命令行上给出的任何值,这与您想要的完全相反。只是放下那个:
option_one = from_makefile
all:
echo $(option_one)
产生:
> make
echo from_makefile
from_makefile
> make option_one=hi
echo hi
hi