我们的项目变得非常庞大,我们的构建系统不再适用于规模。我们正在Linux机器上进行跨平台开发。我们有太多的平台需要构建,甚至还有更多的构建选项。我们认为需要升级基于Makefile的构建环境。
以下是理想情况下的要求:
- 快速(因此不能使用libtool) - 支持并行构建 - 友好的交叉编译 - Ccache集成 - 支持增量构建,如果满足某些条件,则可以短路(如果未更改a、b、c选项则短路,否则重新构建) - 易于脚本化(最好集成Python) - 用户友好的语法 - 分布式系统。各个模块可以单独开发 - 可以构建第三方库(使用autotools、cmake等) - 可以跟踪模块之间的依赖关系(但足够灵活,可以用替代外部模块替换模块)。 - 内置单元测试支持 - 可以将大型二进制文件存储在版本控制之外,并在需要时下载 - 可以跟踪开源许可证 - git集成
您是否了解任何工具(或一组工具),可以满足(至少部分)以上要求?目前,我倾向于使用gyp + ninja。但是语法不太友好,也没有文档。所以这很困难。
以下是理想情况下的要求:
- 快速(因此不能使用libtool) - 支持并行构建 - 友好的交叉编译 - Ccache集成 - 支持增量构建,如果满足某些条件,则可以短路(如果未更改a、b、c选项则短路,否则重新构建) - 易于脚本化(最好集成Python) - 用户友好的语法 - 分布式系统。各个模块可以单独开发 - 可以构建第三方库(使用autotools、cmake等) - 可以跟踪模块之间的依赖关系(但足够灵活,可以用替代外部模块替换模块)。 - 内置单元测试支持 - 可以将大型二进制文件存储在版本控制之外,并在需要时下载 - 可以跟踪开源许可证 - git集成
您是否了解任何工具(或一组工具),可以满足(至少部分)以上要求?目前,我倾向于使用gyp + ninja。但是语法不太友好,也没有文档。所以这很困难。