Quite OK for small projects.
Every C++ programmer should know how to use Make.
- ubiquitous, portable
- a lot of limitations
- not very expressive syntax
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
- fast, seems to scale well
- rather rigid project organization
- has many dependencies itself
- 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
||Part of the Qt Project
- 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
||Fairly new system still under development.|
My advice: stay away from autotools if you can.