.cmake文件的目的是什么?

时间:2017-09-27 20:16:03

标签: cmake

我可能是谷歌搜索错误,但我无法找到.cmake文件的目的是什么。

我刚刚偶然发现了一个我要使用的项目的cmake工具,我很难理解它是如何工作的。我明白在包含CMakeLists.txt的目录中运行cmake命令会执行该文件中的命令(以及子目录中包含的CMakeLists.txt中的命令),但.cmake文件的目的更多模糊。

它们似乎用于定义CMakeLists后来使用的函数/设置变量,但我不确定。它们如何被CMake工具使用?

2 个答案:

答案 0 :(得分:8)

您可以使用include命令包含它。与其他语言允许您将源文件拆分为模块或头文件的方式类似,它们可以包含函数定义,宏可以在多个Cmake列表中重复使用。

请参阅https://cmake.org/cmake/help/v3.0/command/include.html

请注意,您实际上可以包含任何文件,但通常使用.cmake扩展名。

答案 1 :(得分:4)

在此文件中,您可以定义可在CMakeLists.txt文件中使用的宏的功能。但是还有一些其他的.cmake文件应用程序。例如,如果要提供库或工具,则它们至少应包含<name>Config.cmake,以便您的库可以与find_package()命令一起使用。更多信息可在CMake Wiki

中找到