Seems to be(come) the de-facto standard in the C++ world.
- available on a lot of platforms
- lot of tutorials, resources, etc.
- used as project model by some IDEs
- can be slow at times
- carries a lot of technical debt
- clumsy syntax
- uniform across platforms, no project generation step
- supports wildcard patterns
- support for C++ Modules
- support for cross-compilation
- skips recompilation of ignorable changes (comments, whitespaces, etc).
- dependency management
- no dependencies, only C++ compiler required
- automatic dependency analysis
- uses a real programming language (Python) for config files
- pretty verbose; even common tasks require a lot of code
- can be slow for big projects
Bear (Build Ear)
tool for generating compilation databases (compile_commands.json) for clang tooling and/or LSP language servers