首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >cmake glob包含,同时保留目录结构

cmake glob包含,同时保留目录结构
EN

Stack Overflow用户
提问于 2011-06-02 23:19:01
回答 1查看 6.2K关注 0票数 15

我是cmake的新手,我正在尝试安装.hpp文件,同时保留目录结构。

到目前为止,我已经

代码语言:javascript
复制
FILE(GLOB files "${CMAKE_CURRENT_SOURCE_DIR}/include/*.hpp"
  "${CMAKE_CURRENT_SOURCE_DIR}/include/MyLib/*.hpp"
  "${CMAKE_CURRENT_SOURCE_DIR}/include/MyLib/detail/*.hpp"

install (FILES ${files}  DESTINATION include)

所有文件都会被找到,但目录层次结构是扁平的。

我想要模拟的bjam命令是

代码语言:javascript
复制
install headers 
    : ../include/EnsembleLearning.hpp  
      [ glob ../include/MyLib/*.hpp ]  
      [ glob ../include/MyLib/detail/*.hpp ]  
    : <install-source-root>../include ;
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-06-03 01:41:03

您可以使用CMake install命令的目录变体。此命令将保留复制目录的结构:

代码语言:javascript
复制
install(DIRECTORY include/ DESTINATION include
          FILES_MATCHING PATTERN "*.hpp")

如果要复制的目录包含不应该安装的子目录,则必须使用模式排除选项显式排除这些子目录:

代码语言:javascript
复制
install(DIRECTORY include/ DESTINATION include
          FILES_MATCHING PATTERN "*.hpp"
          PATTERN "include/MyOtherLib" EXCLUDE)
票数 16
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6216554

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档