Build Awesome
- https://reproducible-builds.org/
 - batect/batect
- Apache-2.0, Kotlin
 - Build And Testing Environments as Code Tool
 
 - elfshaker/elfshaker
 - upx/upx
- GPL-2.0, C,C++
 - 压缩可执行文件
 
 - rui314/mold
- GNU AGPL v3, C++
 - 替代 GNU gold, LLVM lld
 
 
Build system
为什么需要 构建系统
构建之所以需要一个系统,是因为大项目通常包含上 百万 个 C/C++ 源文件,单纯的直接编译是不现实的。
- 假设平均处理每个源文件需要 0.01s,那么 1M 源文件则需要 3 小时
 
- Ninjia
 - CMAKE
 - Make
 - Bazel
 - Buck
 - pantsbuild/pants
- scalable build system for monorepos
 
 - gn
- generates build files for Ninja
 
 - Nix
 - go-task/task