shell – 如何将命令的输出分配给Makefile变量

前端之家收集整理的这篇文章主要介绍了shell – 如何将命令的输出分配给Makefile变量前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我需要有条件地执行一些make规则,只有当Python安装大于某个版本(比如2.5)。

我想我可以做一些像执行:

python -c 'import sys; print int(sys.version_info >= (2,5))'

然后在ifeq make语句中使用输出(‘1’如果确定,’0’否则)。

在简单的bash shell脚本中,它只是:

MY_VAR=`python -c 'import sys; print int(sys.version_info >= (2,5))'`

但在Makefile中不起作用。

有什么建议么?我可以使用任何其他合理的解决方法来实现这一点。

使用Make shell内置命令,如MY_VAR = $(shell echo whatever)
me@Zack:~$make
MY_VAR IS whatever
me@Zack:~$ cat Makefile 
MY_VAR=$(shell echo whatever)

all:
    @echo MY_VAR IS $(MY_VAR)

猜你在找的Bash相关文章