CMAKE_PROJECT_NAME

顶层项目的名称。

此变量保存了顶层 CMakeLists.txt 文件中通过 project() 命令指定的项目名称。如果顶层 CMakeLists.txt 包含多个 project() 调用,则顶层 CMakeLists.txt 中最后一次调用的 project() 命令将决定 CMAKE_PROJECT_NAME 包含的名称。例如,请考虑以下顶层 CMakeLists.txt:

cmake_minimum_required(VERSION 3.0)
project(First)
project(Second)
add_subdirectory(sub)
project(Third)

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

project(SubProj)
message("CMAKE_PROJECT_NAME = ${CMAKE_PROJECT_NAME}")

顶层 CMakeLists.txt 中最后一次遇到的 project() 命令将是 project(Second),因此这将打印:

CMAKE_PROJECT_NAME = Second

要获取当前目录范围或更高级别中最后一次调用 project() 的名称,请参见 PROJECT_NAME 变量。