使用cmake将源文件放在INSTALL目标中

时间:2014-02-24 14:27:26

标签: cmake

我几天前问了一个问题How to add files to a non-executable or non-library target with CMake,这个问题的最佳解决方案是使用add_custom_target命令。

但是,如果目标是由CMAKE本身创建的,则此解决方案可能无效。例如,运行CMAKE时自动创建的INSTALL目标。假设,我还在INSTALL项目下添加了一些额外的文件,我该怎么办?我尝试了以下命令,但失败了:

add_custom_target( INSTALL  
  SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/file_to_be_added.h
)

1 个答案:

答案 0 :(得分:1)

无法修改CMake的默认INSTALL目标。但是,您可以添加自定义目标,该目标与INSTALL目标的功能相同,并添加了其他文件,例如:

add_custom_target(myinstall
    COMMAND "${CMAKE_COMMAND}" "-DBUILD_TYPE=$<CONFIGURATION>"
        "-P" "${CMAKE_BINARY_DIR}/cmake_install.cmake"
    SOURCES "${CMAKE_CURRENT_SOURCE_DIR}/file_to_be_added.h"
    WORKING_DIRECTORY "${CMAKE_BINARY_DIR}")