您的位置:首页 > 其它

Makefile 变量定义(*赋值)

2013-04-07 08:59 197 查看
在GNU make中,变量的定义有两种方式,递归展开式变量和直接展开式变量。

两种变量的不同主要体现在两个方面:1. 定义方式 ; 2.展开时机。

详细的介绍和例子演示可以查阅 GNU Makefile.pdf chapter 6.2.

递归展开式变量:

1. 定义方式为 =

foo=$(bar)

bar=$(ugh)

ugh=Huh?

all: ;echo $(bar)

2.变量可以引用在其后面定义的变量,因为递归式变量的展开是在执行的时候,也就是在echo $(bar) 这个命令执行的时候才会对$(bar)进行展开。

直接展开式变量

1. 定义方式为 :=

x := foo

y := $(x) bar

x: = later

2. 变量是在定义的时候就直接进行展开,因此y变量就是等于foo bar.

Over.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: