(automake.info.gz) Dependencies
Info Catalog
(automake.info.gz) ANSI
(automake.info.gz) Programs
(automake.info.gz) EXEEXT
Automatic dependency tracking
=============================
As a developer it is often painful to continually update the
`Makefile.in' whenever the include-file dependencies change in a
project. Automake supplies a way to automatically track dependency
changes.
Automake always uses complete dependencies for a compilation,
including system headers. Automake's model is that dependency
computation should be a side effect of the build. To this end,
dependencies are computed by running all compilations through a special
wrapper program called `depcomp'. `depcomp' understands how to coax
many different C and C++ compilers into generating dependency
information in the format it requires. `automake -a' will install
`depcomp' into your source tree for you. If `depcomp' can't figure out
how to properly invoke your compiler, dependency tracking will simply
be disabled for your build.
Experience with earlier versions of Automake (1) taught us that it
is not reliable to generate dependencies only on the maintainer's
system, as configurations vary too much. So instead Automake
implements dependency tracking at build time.
Automatic dependency tracking can be suppressed by putting
`no-dependencies' in the variable `AUTOMAKE_OPTIONS', or passing
`no-dependencies' as an argument to `AM_INIT_AUTOMAKE' (this should be
the prefered way). Or, you can invoke `automake' with the `-i' option.
Dependency tracking is enabled by default.
The person building your package also can choose to disable
dependency tracking by configuring with `--disable-dependency-tracking'.
---------- Footnotes ----------
(1) See `http://sources.redhat.com/automake/dependencies.html' for
more information on the history and experiences with automatic
dependency tracking in Automake
Info Catalog
(automake.info.gz) ANSI
(automake.info.gz) Programs
(automake.info.gz) EXEEXT
automatically generated byinfo2html