管理多个项目的元构建解决方案

A meta-build solution managing multiple projects

我正在寻找有关在几天的搜索中没有引起我注意的软件的建议。

是否有任何软件解决方案可以同时部署多个项目,在源构建包管理器级别运行(如 ports, portages, or nix),但可以驻留在本地?

至于细节,我们有几个具有以下特征的松散连接的软件项目:

我们需要一个适用于各种环境的统一构建和部署工具。 CMake 不能很好地与非编译语言集成(例如,本身不支持通过 virtualenv 进行的本地 Python 安装)。

我不想改变我们已经开发的东西,而是想以 OS 包管理器的方式使用它们。按照我的设想,应该是和所谓的meta-build tool很相似的东西。事实上,Gentoo Portages 非常接近:

在将整个构建系统切换到 Meson or Bazel 或我目前能找到的任何其他系统之前,我必须变得非常自信。

更新

更具体地说,我可以参考我们目前所做的事情。我们正在维护的超级项目中的 one 涉及特定的科学实验:

由于几天来都没有结果,我想根据我们已经从这些 shell 脚本 activity.[=18= 中获得的经验编写自己的解决方案]

看看 Sparrow - Linux 脚本平台,它支持项目层次结构和任务 - 可配置脚本,其中配置以声明方式在 Yaml 中进行,Json 格式。这有望解决您在此处提到的许多(如果不是全部)需求。

披露 - 我是工具作者。

对于类似的任务 Bob 是前段时间开发的。如果您仍然需要一个构建系统,那么它可能值得一看。有一些可用的小教程以及一个复杂的地下室示例,可以从头开始构建 linux。

基本上,它只是一个受控执行 bash 脚本的环境,具有依赖性和变体处理、CI 集成、IDE 支持、..