关于C#:CMake仅在重新加载时复制文件,而不生成

CMake only copies files on reload, not build

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

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

每当在CLion中重新加载我的CMake项目时,此方法均起作用。但是,每当我尝试构建时,都不会再次复制文件。我该如何解决?我使用了错误的命令吗?


使用add_custom_target

1
2
3
4
5
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)

使用configure_file(... COPYONLY)