|  5.3 Maintaining Input Files 
If you edit any of the GNU Autotools input files in your package, it is
necessary to regenerate the machine generated files for these changes to
take effect.  For instance, if you add a new source file to the
foonly_SOURCESvariable in `Makefile.am'.  It is necessary
to re-generate the derived file `Makefile.in'.  If you are building
your package, you need to re-runconfigureto re-generate the
site-specific `Makefile', and then re-runmaketo compile
the new source file and link it into `foonly'. 
It is possible to regenerate these files by running the required tools,
one at a time.  However, as we can see above, it can be difficult to
compute the dependencies--does a particular change require
aclocalto be run?  Does a particular change requireautoconfto be run?  There are two solutions to this problem. 
The first solution is to use the autoreconfcommand.  This
tool regenerates all derived files by re-running all of the necessary
tools in the correct order.  It is somewhat of a brute force solution,
but it works very well, particularly if you are not trying to accommodate
other maintainers, or regular maintenance that would render this command
bothersome. 
The alternative is Automake's `maintainer mode'.  By invoking the
AM_MAINTAINER_MODEmacro from `configure.in', automake will
activate an `--enable-maintainer-mode' option in
`configure'.  This is explained at length in 8. Bootstrapping. 
 |