我在父CMakeLists.txt中写了一些定义 我希望那些定义在项目的子目录中被继承。 所以如果我有一个像CMAKE从父项继承定义
root
|- CMakeLists.txt
|- A
| |- CMakeLists.txt
|- B
|- CMakeLists.txt
我写了根的CMakeLists.txt定义项目应该去的孩子。
如何做到这一点?
我在父CMakeLists.txt中写了一些定义 我希望那些定义在项目的子目录中被继承。 所以如果我有一个像CMAKE从父项继承定义
root
|- CMakeLists.txt
|- A
| |- CMakeLists.txt
|- B
|- CMakeLists.txt
我写了根的CMakeLists.txt定义项目应该去的孩子。
如何做到这一点?
更改包含这些更改的顺序。在过去,我用
CMAKE_MINIMUM_REQUIRED(VERSION 2.8.0)
SET(ENV{OSDEP} "linux")
SET(ENV{BIT} 64)
SET(ENV{XUL} 5000)
ADD_SUBDIRECTORY(lib/src/json)
add_definitions("-_DDEBUG")
这是我最后两行改为
add_definitions("-_DDEBUG")
ADD_SUBDIRECTORY(lib/src/json)
这取决于您如何在CMakeLists.txt中使用A和B的CMakeLists.txt。
CMAKE方式是在根的CMakeLists.txt中为A和B做add_subdirectory(并强烈推荐它,经过很长一段时间的努力之后)。然后A和B具有来自root和root的所有变量都具有所有目标可从A和B获得。