CMake 开发随笔
预定义变量
源文件路径
变量名 | 含义 | 会因 add_subdirectory() 变化 | 会因 project() 变化 | 用途 | 推荐使用场景 |
---|---|---|---|---|---|
CMAKE_SOURCE_DIR | 顶层 CMake 项目的源代码目录(CMake 最初运行的目录) | ❌ 否 | ❌ 否 | 全局设置、根路径引用 | 获取整个 CMake 项目的根目录 |
PROJECT_SOURCE_DIR | 当前 project() 指令所在目录 | ✅ 是 | ✅ 是 | 模块级路径引用(推荐) | 获取当前模块(Project)目录 |
CMAKE_CURRENT_SOURCE_DIR | 当前 CMakeLists.txt 文件所在目录 | ✅ 是 | ❌ 否 | 当前目录相关文件引用(强烈推荐) | 获取当前 CMakeLists 所在目录 |