cmake拷貝文件夾
- 使用add_custom_target完成拷貝
- 下面的核心代碼, 以VS2015為例,將會創建一個名為copy_files的項目,見下圖:

核心代碼范例
# 拷貝文件夾到指定的目錄
add_custom_target(copy_files ALL
VERBATIM
# COMMAND_EXPAND_LISTS
COMMAND ${CMAKE_COMMAND} -E make_directory "${publih_lib_include}"
COMMAND ${CMAKE_COMMAND} -E
copy_directory
"${CMAKE_CURRENT_SOURCE_DIR}/include"
"${publih_lib_include}"
)
- copy_files是創建的項目名稱,可任意修改
- publih_lib_include為自定義輸出目錄
代碼解釋
COMMAND ${CMAKE_COMMAND} -E make_directory "${publih_lib_include}"
- 創建${publih_lib_include}宏所在目錄
COMMAND ${CMAKE_COMMAND} -E
copy_directory
"${CMAKE_CURRENT_SOURCE_DIR}/include"
"${publih_lib_include}"
- 將"${CMAKE_CURRENT_SOURCE_DIR}/include"文件夾拷貝到"${publih_lib_include}"
add_custom_target 更多用法