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

CMake only copies files on reload, not build

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

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

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

使用configure_file(... COPYONLY)

使用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)