使用cmake 2.8
我想在将头文件从源目录复制到目标目录时维护目录层次结构.例如,需要复制的头文件是abc/1.h,def/2.h,它们也应该直接在目标中以相同的顺序复制(通过CMAKE_INSTALL_PREFIX设置)
这是我尝试过的,但它只是复制头文件而不是包含父目录名的头文件
set(HEADERS "abc/1.h;def/2.h")
install(FILES ${HEADERS} DESTINATION include)
Run Code Online (Sandbox Code Playgroud)
最终输出应为dest_directory/abc/1.h和dest_directory/def/2.h.
如果目录中有许多文件用于安装,则可以考虑使用命令流安装目录install(DIRECTORY).您可以选择使用PATTERN或REGEX选项安装目录中的哪些文件:
install(DIRECTORY "${CMAKE_SOURCE_DIR}/" # source directory
DESTINATION "include" # target directory
FILES_MATCHING # install only matched files
PATTERN "*.h" # select header files
)
Run Code Online (Sandbox Code Playgroud)
有关的更多信息,请参阅CMake文档install(DIRECTORY).此外,它描述了源目录末尾的含义"/".
| 归档时间: |
|
| 查看次数: |
2408 次 |
| 最近记录: |