Makefile有自己的语法,同时makefile又可以调用shell相关执行环境,因此这里简单的笔记下示例:
Makefile:
ifeq ($(TEST1), 1) VALUE1 = "AA" else VALUE1 = "BB" endif show_value: @echo "VALUE1="$(VALUE1) @if [ $(TEST1) = 1 ]; \ then \ echo "CC"; \ else \ echo "DD"; \ fi
测试结果如下:
$ make TEST1=1 VALUE1=AA CC $ make TEST1=2 VALUE1=BB DD
这里有两种写法,上面的写法为Makefile语法,因为此时还是Makefile解析,下面的为shell写法,因为此时已经进入了shell解析。
发表评论