CMake仅在重新加载时复制文件,而不是构建

时间:2015-02-16 02:36:43

标签: c++ cmake clion

我在CLion IDE中使用CMake,在我的CMakeLists.txt中使用以下命令将一些资源文件复制到二进制目录中:

file(COPY ${CMAKE_SOURCE_DIR}/res DESTINATION ${CMAKE_BINARY_DIR})

只要我的CMake项目在CLion中重新加载,这就有效。但是,每当我尝试构建时,文件都不会再次复制。我该如何解决?我使用了错误的命令吗?

2 个答案:

答案 0 :(得分:2)

使用add_custom_target

add_custom_target(copy_res_directory ALL
    COMMAND ${CMAKE_COMMAND} -E copy_directory 
        "${CMAKE_SOURCE_DIR}/res" "${CMAKE_BINARY_DIR}/res"
    COMMENT "Copy res directory to build tree"
    VERBATIM)

答案 1 :(得分:1)

使用configure_file(... COPYONLY)