使ifndef反向行为

时间:2013-11-06 01:36:22

标签: c++ makefile

ifndef CC
  CC := icc
endif

override CC := $(CC)

然后是

的结果
make

CC=ccmake CC=gcc是对的。

如果我将ifndef更改为ifdef,那么CC=icc,一切正常。

它是如何运作的?

1 个答案:

答案 0 :(得分:0)

CC默认定义。因此make相当于make CC=cc

您可以完全跳过条件并获得您想要的行为:

override CC := icc