当前位置: 技术问答>linux和unix
跪求makefile高手帮我解决问题:
来源: 互联网 发布时间:2016-09-08
本文导语: linux系统下运行make命令。 文件内容: testmake.mk #ifdef NAME VERSION := good #else VERSION := bad #endif targetall:targeta @echo ---target all---$(VERSION) targeta: @echo ---target a ---$(NAME) 我到命令行参数: make -f test.mk targetall...
linux系统下运行make命令。
文件内容:
testmake.mk
我到命令行参数:
make -f test.mk targetall NAME=a
我现在想做到事情是:
根据命令行参数输入到NAME到值,我重新定义VERSION到值。
如果NAME=a,那么我把VERSION := good
如果NAME=b,那么VERSION:=bad.
如果需要达到这个效果,我该如何修改我到makefile文件?
跪求高手解答!
文件内容:
testmake.mk
#ifdef NAME
VERSION := good
#else
VERSION := bad
#endif
targetall:targeta
@echo ---target all---$(VERSION)
targeta:
@echo ---target a ---$(NAME)
我到命令行参数:
make -f test.mk targetall NAME=a
我现在想做到事情是:
根据命令行参数输入到NAME到值,我重新定义VERSION到值。
如果NAME=a,那么我把VERSION := good
如果NAME=b,那么VERSION:=bad.
如果需要达到这个效果,我该如何修改我到makefile文件?
跪求高手解答!
|
封装个shell脚本
nmake
parameter=$1
if [ ${parameter} = "a" ];then
make -f test.mk targetall NAME=a
elif [ ${parameter} = "b" ];then
make -f test.mk targetall NAME=b
fi
nmake
parameter=$1
if [ ${parameter} = "a" ];then
make -f test.mk targetall NAME=a
elif [ ${parameter} = "b" ];then
make -f test.mk targetall NAME=b
fi
|
学习下,这个parameter=$1
我以前一直习惯用export,写一个setenv.sh脚本,控制编译环境变量。
我以前一直习惯用export,写一个setenv.sh脚本,控制编译环境变量。
|
就用if啊
|
2楼那样简单的if判断一下不就oK了么?
|
2楼正解