CMake:获取根项目名称
CMake: Get root project name
假设我有以下 C 项目结构:
├── CMakeLists.txt
├── include
│ ├── header.h
├── README.md
├── src
│ └── src.c
└── test
├── CMakeLists.txt
└── test.c
根目录中的 CMakeLists.txt
包含一个名为 cproj
的项目
PROJECT(cproj C)
也在test/CMakeLists.txt
,我还有一个项目
PROJECT(test C)
问题是如何评估test
目录中CMakeLists.txt
中的项目名称cproj
?
如果我正确地收集了你的用例,你可能应该这样做:
test
很可能不是一个独立的子项目。它不应该有 project
指令。如果删除它,它现在将位于 cproj
项目下。
现在您正在寻找您在根目录中设置的项目名称,它应该可以通过 CMAKE_PROJECT_NAME
变量获得。
假设我有以下 C 项目结构:
├── CMakeLists.txt
├── include
│ ├── header.h
├── README.md
├── src
│ └── src.c
└── test
├── CMakeLists.txt
└── test.c
根目录中的 CMakeLists.txt
包含一个名为 cproj
PROJECT(cproj C)
也在test/CMakeLists.txt
,我还有一个项目
PROJECT(test C)
问题是如何评估test
目录中CMakeLists.txt
中的项目名称cproj
?
如果我正确地收集了你的用例,你可能应该这样做:
test
很可能不是一个独立的子项目。它不应该有project
指令。如果删除它,它现在将位于cproj
项目下。现在您正在寻找您在根目录中设置的项目名称,它应该可以通过
CMAKE_PROJECT_NAME
变量获得。