1

是否存在具有以下标准的现有构建系统?

  • 可嵌套/递归。即,没有像 CMake 或(非递归)make 或几乎所有其他构建系统那样的“顶级”构建文件。
  • 源内构建。这是构建系统完全可嵌套/递归所必需的。
  • 多种语言的自动依赖扫描
  • 具有声明式而非命令式语法的配置文件
  • 配置文件语法支持添加任意自定义构建规则
  • 没有 IDE 项目生成膨胀
  • 跨平台实施没有阻碍
  • 基于哈希的更改检测(或至少〜某事)比时间戳更好
  • 免费软件

基本上,我想要的东西能够胜任在系统范围内管理软件构建依赖项的任务,但仍然是极简且高效的。我想要一个精神上的继任者,让它被大多数开源世界所采用。什么最接近?

4

3 回答 3

1

Tup看起来很有趣...

http://gittup.org/tup/

和 djb 重做:

https://github.com/apenwarr/redo/

并摇动:

http://hackage.haskell.org/package/shake

于 2012-11-14T16:03:17.860 回答
0

ninja 基础设施看起来很有趣。它不是一个独立的构建系统,但也许它会促使某人编写一个非常优雅的前端。也许支持它作为后端的 CMake 会加速它的采用。

http://martine.github.com/ninja/

于 2012-11-14T15:26:30.490 回答
0

Makepp 接近了,我已经使用它了。不过,由于某种原因,它没有太大的吸引力……潜在的缺点:

  • 用 perl 而不是系统编程语言实现,所以对破解它感兴趣的开发人员更少?
  • 不合适,所以很难认真对待
  • 从 Make 继承语法;并没有真正执行一种正确的做事方式
  • 缓慢的构建
  • 子目录不从父目录继承信息
于 2012-11-14T15:02:36.023 回答