(与Shell script to export environment variables in make相关)
我想使用shell脚本创建一些可以在以后使用的变量。我以为我可以直接找到脚本:
target:
. myscript
echo ${FOO} # FOO is exported in myscript
但这似乎不起作用。有没有办法做到这一点?
答案 0 :(得分:1)
如何使用include directive代替。将变量defs放在单独的makefile而不是shell脚本中。
答案 1 :(得分:0)
这会有效,但不是你的方式。 make为每一行调用一个新的shell,所以在你给出的例子中,echo $ {FOO}是一个新的shell。你可以这样做:
target: . myscript; \ echo $${FOO}
请注意,在{FOO}
上需要两个'$'符号答案 2 :(得分:0)
使用include directive设置target-specific variable可能是最接近您要求的内容。