(目录)
需求描述
Makefile需要从shell脚本中读取变量
Makefile 读取变量
# 打印版本号
.PHONY: echo-version
echo-version:
echo ${VERSION};
直接打印发现是空的
$ make echo-version
echo ;
可以读取环境变量
$ export VERSION='0.0.1' && make echo-version
echo 0.0.1;
0.0.1
可以通过命令行传递变量
$ make echo-version VERSION='0.0.1'
echo 0.0.1;
0.0.1
Makefile文件中定义变量
# makefile文件中定义变量
VERSION="0.0.2"
# 打印版本号
.PHONY: echo-version
echo-version:
echo ${VERSION};
$ make echo-version
echo "0.0.2";
0.0.2
Makefile从shell脚本中导入变量
# 打印版本号
.PHONY: echo-version
echo-version:
. ./version.sh && echo $${VERSION};
注意:使用两个
$$
而不是$
version.sh
#!/bin/bash
##################################
# 版本号
##################################
export VERSION='0.0.3'
$ make echo-version
. ./version.sh && echo ${VERSION};
0.0.3