在 GNU
的 make
中,还支持模式变量( Pattern-specific Variable
),通过上面的目标变量中,我们知道,变量可以定义在某个目标上。模式变量的好处就是,我们可以给定一种模式,可以把变量定义在符合这种模式的所有目标上。
我们知道, make
的模式一般是至少含有一个 %
的,所以,我们可以以如下方式给所有以 .o
结尾的目标定义目标变量:
%.o : CFLAGS = -O点击复制复制失败已复制
同样,模式变量的语法和目标变量一样:
<pattern ...>; : <variable-assignment>; <pattern ...>; : override <variable-assignment>;点击复制复制失败已复制
override
同样是针对于系统环境传入的变量,或是 make
命令行指定的变量。