【问题标题】:Handle cmake duplicated git subtrees处理 cmake 重复的 git 子树
【发布时间】:2018-03-18 18:04:21
【问题描述】:

我有一个 cmake git 存储库,其中包含一个我在许多项目中使用的库,名为 core

我有另一个 cmake git 存储库,其中包含 core 作为子树中的依赖项。该项目创建了一个库plot

现在我有一个新的 git 存储库,它需要 plotcore 作为依赖项,我也将它们作为子树包含在内。现在我的项目结构是:

myproject
|
|-Thirdparty-subtrees
  |
  |-core
  |-plot
    |
    |-Thirdparty-subtrees
      |
      |-core

现在,当我想用​​ cmake 构建 myproject 时,它告诉我我有两个同名的项目 core,因为该项目被定义了两次。

我可以删除第一级core子树,但是它会变成一个隐藏的依赖,如果由于某种原因plot会删除core子树,我就会遇到问题。我想在第一级子树文件夹中维护显式依赖。

所以我想知道如何使用 CMake 检查是否存在两个具有相同名称的目标,在这种情况下通过消息通知它并只构建一个项目而丢弃另一个(我想如果两个目标有同名,他们是同一个项目)。

我怎样才能只正确构建一次core

【问题讨论】:

标签: git cmake git-subtree


【解决方案1】:

尽管看起来很像,但 Git 并不是用来作为依赖管理工具的。为此,您最好使用其他工具。

【讨论】:

  • 我知道。我想知道如何使用 CMake 以便仅包含一次由于子树管理而在我的树中重复的项目。
  • 啊,也许我误解了这个问题。道歉。
猜你喜欢
  • 1970-01-01
  • 2015-01-11
  • 1970-01-01
  • 2021-07-15
  • 1970-01-01
  • 2016-07-05
  • 1970-01-01
  • 2021-05-26
  • 2016-09-10
相关资源
最近更新 更多