首页 > 解决方案 > CMake:获取根项目名称

问题描述

假设我有以下 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)

问题是如何评估 in 目录中的cproj项目CMakeLists.txt名称test

标签: ccmakeproject

解决方案


如果我正确收集了您的用例,您可能应该执行以下操作:

  1. test很可能不是一个独立的子项目。它不应该有project指令。如果删除它,它现在将位于cproj项目下。

  2. 现在您正在寻找您在根目录中设置的项目名称,它应该可以通过CMAKE_PROJECT_NAME变量获得。


推荐阅读