在我的 CMakeLists.txt 中,我可以轻松更改 CMAKE_CURRENT_SOURCE_DIR
:
set(CMAKE_CURRENT_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/qqq )
从现在开始,我将在所有CMake语句,函数等中看到新值。但这不会影响文件查找。以下语句仍然有效
add_library(t SHARED qqq/rrr.cpp)
这失败了:
add_library(t SHARED rrr.cpp)
有没有办法更改 CMAKE_CURRENT_SOURCE_DIR
?
答案 0 :(得分:2)
有没有一种方法可以真正更改
CMAKE_CURRENT_SOURCE_DIR
?
使用add_subdirectory(qqq)
。
严重地,CMAKE_CURRENT_SOURCE_DIR
表示当前正在处理的CMakeLists.txt
的位置。一些CMake函数(甚至是内部函数)在很大程度上依赖于变量的此属性。 不应手动更改此变量。
所有引用SOURCE
或BINARY
目录的变量都应视为只读。其中: