相关疑难解决方法(0)

如何检测当前范围是否在CMake中具有父级?

有没有办法检测当前范围是否有父项?

我有一个项目,可以是独立项目,也可以是另一个项目的子项目.为了允许子项目的情况,我使用PARENT_SCOPE标志set()将事物推送到父项.但是,当构建为独立项目时,我得到"当前范围没有父级"警告.我想通过检测是否存在父级并在if语句中包含set()调用来避免该错误.或者是否有另一种方法在父级范围内设置变量?

cmake

15
推荐指数
2
解决办法
4793
查看次数

如何在CMakeLists.txt中判断它是否与add_subdirectory()一起使用?

我有此代码项目可以独立构建,也可以作为较大存储库的子项目构建(将其作为子存储库检查)。在后一种情况下,我CMakeLists.txt在主项目中拥有一个顶层

add_subdirectory(${MY_SUBPROJ_SUBDIR})
Run Code Online (Sandbox Code Playgroud)

现在,我希望子项目在通过中使用时,其行为有所不同the add_directory()。显然,我会使用一条大if指令。但是我要检查什么情况?当运行某些命令时CMakeLists.txt,CMake如何“告诉” 它是子目录文件还是主文件?

build cmake subdirectory subrepos

3
推荐指数
1
解决办法
1055
查看次数

标签 统计

cmake ×2

build ×1

subdirectory ×1

subrepos ×1