查看变量
cmake --help-variable CMAKE_MODULE_PATH
常用变量CMAKE_MODULE_PATH
查看变量后发现该变量默认为空,需要自己定义。
这个变量用来定义自己的cmake模块所在的路径。
如果工程比较复杂,有可能会自己编写一些cmake模块,这些cmake模块是随工程发布的,为了让cmake在处理CMakeLists.txt时找到这些模块,你需要通过SET指令将cmake模块路径设置一下。
比如SET(CMAKE_MODULE_PATH,${PROJECT_SOURCE_DIR}/cmake),这时候就可以通过INCLUDE指令来调用自己的模块了。
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/Modules")
set(变量,值1,值2…) 这里赋两个值, ${CMAKE_MODULE_PATH} 默认空,不知道意义何在
常用变量CMAKE_SOURCE_DIR
cmake --help-variable CMAKE_SOURCE_DIR
The path to the top level of the source tree.
This is the full path to the top level of the current CMake source
tree. For an in-source build, this would be the same as
``CMAKE_BINARY_DIR``.
When run in -P script mode, CMake sets the variables
``CMAKE_BINARY_DIR``, ``CMAKE_SOURCE_DIR``,
``CMAKE_CURRENT_BINARY_DIR`` and
``CMAKE_CURRENT_SOURCE_DIR`` to the current working directory.
PROJECT_SOURCE_DIR:
cmake --help-variable PROJECT_SOURCE_DIR
PROJECT_SOURCE_DIR
------------------
Top level source directory for the current project.
This is the source directory of the most recent ``project()`` command.
< projectname >_SOURCE_DIR
这三个变量指代的内容是一致的,不论采用何种编译方式,都是工程顶层目录。
也就是在in-source编译时,他跟CMAKE_BINARY_DIR等变量一致。PROJECT_SOURCE_DIR跟其它指令稍有区别,目前可以认为它们是一致的。(out-of-source build与in-source build相对,指是否在CMakeLists.txt所在目录进行编译。)