When comparing Autotools vs Waf, the Slant community recommends Waf for most people. In the question“What are the best open-source build systems for C/C++?” Waf is ranked 10th while Autotools is ranked 18th. The most important reason people chose Waf is:
You don't have to learn a domain specific syntax. If you know Python, it's a breeze.
Ranked in these QuestionsQuestion Ranking
Pros
Pro Based on standard tools
It's a standard tool built over standard tools.
Pro Ubiquitous
It's a well established build system that is ubiquitous in the open source world.
Pro make distcheck
Build your project, run the tests, create a release tarball, unpack it with read-only sources, build it and run the tests. This should be the minimum standard for every build system, yet it seems hard to reach.
Pro Basic API for building anything: ./configure; make
The skills you learn for building one language still work when you build something else, even down to creating books for print from emacs org-mode.
Pro Written in Python
You don't have to learn a domain specific syntax. If you know Python, it's a breeze.
Pro File changes are tracked based on a hash of their changes not the time stamp
This means that switching branches in git isn't a big deal.
Pro Very fast
Much faster than its predecessor SCons.
Pro Fairly easy to extend
Pro Very simple graph based API
Cons
Con Perl
Autoconf is dependent on Perl.
Con Autotools is far too complicated
It seems to add far too much complexity to projects. The build system has a tendency to be more complex than the actual projects that it's being used to build.
Con Poor documentation
In spite of its many years of existence, the available documentation leaves much to be desired.