在shell脚本中使用makefile变量

时间:2013-05-20 08:20:35

标签: shell makefile

我有一个makefile,其中定义了所有环境变量(顶层目录),我想在最里面的shell脚本中使用其中一些变量。

我应该如何在脚本中访问这些变量?我是否需要IPC来传递变量,还是有其他方法可以做同样的事情吗?

2 个答案:

答案 0 :(得分:4)

如果make导出变量,您可以立即使用它们(但请注意,对shell变量的更改不会更改make变量)。如果使用GNU make,则可以使用export指令。

如果make未导出变量,则可以使用shell的一次性分配,例如

UNEXPORTED_VAR = foo
all:
     UNEXPORTED_VAR='$(UNEXPORTED_VAR)' OTHERVAR='$(OTHERVAR)' script.sh

答案 1 :(得分:0)

像Jens所说的那样正确,可以使用export make变量。但他的解决方案并不适合我。 所以你也可以做的只是在makefile中导出它们:

export UNEXPORTED_VAR