2.3 How Autotools Help
There are several reasons why you may not want to implement the GNU
Build System yourself (read: write a configure script and
Makefiles yourself).
- As we have seen, the GNU Build System has a lot of
features (see Use Cases).
Some users may expect features you have not implemented because
you did not need them.
- Implementing these features portably is difficult and exhausting.
Think of writing portable shell scripts, and portable
Makefiles, for systems you may not have handy. See Portable Shell Programming, to
convince yourself.
- You will have to upgrade your setup to follow changes to the GNU
Coding Standards.
The GNU Autotools take all this burden off your back and provide:
- Tools to create a portable, complete, and self-contained GNU Build
System, from simple instructions.
Self-contained meaning the resulting build system does not
require the GNU Autotools.
- A central place where fixes and improvements are made:
a bug-fix for a portability issue will benefit every package.
Yet there also exist reasons why you may want NOT to use the
Autotools... For instance you may be already using (or used to)
another incompatible build system. Autotools will only be useful if
you do accept the concepts of the GNU Build System. People who have their
own idea of how a build system should work will feel frustrated by the
Autotools.