CMAKE_PROJECT_DESCRIPTION

从版本 3.9 开始添加。

顶级项目的描述。

此变量通过 project() 命令在顶级 CMakeLists.txt 文件中指定,保存对该项目的描述。在顶级 CMakeLists.txt 中,如果包含多个 project() 调用,将由从该顶级 CMakeLists.txt 中调用的最后一个命令来决定 CMAKE_PROJECT_DESCRIPTION 的值。例如,考虑以下顶级 CMakeLists.txt

cmake_minimum_required(VERSION 3.0)
project(First DESCRIPTION "I am First")
project(Second DESCRIPTION "I am Second")
add_subdirectory(sub)
project(Third DESCRIPTION "I am Third")

以及内容为以下内容的 sub/CMakeLists.txt

project(SubProj DESCRIPTION "I am SubProj")
message("CMAKE_PROJECT_DESCRIPTION = ${CMAKE_PROJECT_DESCRIPTION}")

在顶级 CMakeLists.txt 中所看到的最新 project() 命令是 project(Second ...),所以将会打印出

CMAKE_PROJECT_DESCRIPTION = I am Second

要从当前目录作用域或以上区域中的 project() 的最新调用中获取描述,请参见 PROJECT_DESCRIPTION 变量。