CMake变量名称区分大小写?

usr*_*567 14 cmake case-sensitive

CMake如何处理变量名称?他们是否区分大小写?

如果我用FindFoo.cmake用

find_package(Foo)
Run Code Online (Sandbox Code Playgroud)

我可以使用FOO_FOUND,Foo_FOUND和foo_FOUND?

Ant*_*nio 19

CMake变量区分大小写.见文档.


作为旁注,命令不区分大小写,并且它们的参数区分大小写.见维基.像STATUS这样的关键字区分大小写,因为它们是参数.例:

message(STATUS foo)
MESSAGE(status foo)
Run Code Online (Sandbox Code Playgroud)

输出:

foo
statusfoo
Run Code Online (Sandbox Code Playgroud)

第二个标记为警告(默认消息类型).

仍然关于区分大小写,还要看一下布尔变量部分.


Mij*_*ago 5

他们是区分大小写的。

这里是一个例子:

set(foo 42)

MESSAGE( STATUS ${foo})
MESSAGE( STATUS ${Foo})
Run Code Online (Sandbox Code Playgroud)

输出:

-- 42
-- 
Run Code Online (Sandbox Code Playgroud)