变量的应用(下)
1. 环境变量(全局变量)
- makefile中能够直接使用环境变量的值
定义了同名变量,环境变量将被覆盖
运行make时指定"-e"选项,优先使用环境变量
示例1
LOGNAME := other
test :
@echo "LOGNAME => $(LOGNAME)"
在Makefile中使用环境变量的优缺点:
优势:
环境变量可以在所有makefile中使用
劣势:
过多的依赖于环境变量会导致移植性降低
2. 变量在不同makefile之间的传递方式
- 直接在外部定义环境变量进行传递
- 使用export定义变量进行传递(定义临时环境变量)
- 定义make命令行变量进行传递(推荐)
示例2_1–直接在外部定义环境变量进行传递
makefile
LOGNAME := other
test :
@echo "LOGNAME => $(LOGNAME)"
@echo "make another file"
@$(MAKE) -f make