如何在ExternalProject_Add中将CMake宏用作INSTALL_COMMAND?

时间:2014-10-23 21:42:01

标签: cmake dependencies install

我有一个仅限标题的库,我使用ExternalProject_Add将其包含在我的项目中。 install命令应该只复制一个文件夹。由于这应该适用于Windows和Linux,我尝试使用file(COPY ...)

INSTALL_COMMAND "file(COPY ../src/include DESTINATION ../install/include)"

这会导致错误,因为INSTALL_COMMAND作为shell命令执行。我怎样才能使用CMake宏?

1 个答案:

答案 0 :(得分:4)

CMake有一个“命令模式”,即cmake -E ...,它提供了一些跨平台的文件系统命令。要查看所有-E选项,只需运行cmake -E

要从CMakeLists.txt文件中调用CMake,您可以使用变量CMAKE_COMMAND

INSTALL_COMMAND ${CMAKE_COMMAND} -E copy_directory ../src/include ../install/include