Chapter 5. Forward Porting Notes

Table of Contents

1. Changes in autoconf releases
2. Changes in automake release
3. Changes in libtool releases

Like most software, autoconf, automake and the rest of the autotools family are not set in stone. Each new release strives to improve itself and the way it is used.

This causes a phenomenon of "bit-rotting", similar to the one caused by compilers and interpreters on source code: sources that used to work just fine will start issuing warnings, and further on, it starts not to work any longer.

While the direct reason for this to happen are the changes in the tools, that become stricter in what they accept, or simply change their behaviour to increase compatibility and speed, the underlying reasons are that build systems often use undocumented features, or make mistakes in the way they get used.

For this reason it is important to know exactly what changes between autotools versions, for the developers using them. By knowing the changes in behaviour, it is possible to ensure that a given build system works with the newest released version of the software.