]> git.ipfire.org Git - thirdparty/automake.git/commit
docs: recursive make considered harmful
authorStefano Lattarini <stefano.lattarini@gmail.com>
Tue, 12 Jun 2012 15:24:21 +0000 (17:24 +0200)
committerStefano Lattarini <stefano.lattarini@gmail.com>
Tue, 12 Jun 2012 15:24:21 +0000 (17:24 +0200)
commit61dfb4708e858ee557722b99a3122a0b28af6c59
tree10ed4c37079f27bf243807d2a51599c47e091830
parenta9bd08564cccaf3c602355a8e724812fb97b5b4e
docs: recursive make considered harmful

In the documentation, we shouldn't confuse "packages using subdirectories"
with "packages using recursive make invocations".  A package can have a
careful organization in subdirectories, make no (or almost no) use of make
recursion (examples of such packages are GNU bison, GNU cppi, and Automake
itself).

In fact, make recursion should be used as seldom as possible, because it
makes the build system more brittle and dependency declarations less
faithful.  See Peter Miller's article "Recursive Make Considered Harmful"
for more a more in-depth discussion:

    http://miller.emu.id.au/pmiller/books/rmch/

* doc/automake.texi (Directories): Clarify how a build system based on
make recursion does.  Observe that such a system, albeit being very
widespread, has its own issues and drawbacks, and that one can have a
non-recursive setup also for projects using complex directory layout.
(Recursing subdirectories): Speak of "packages that use make recursion"
rather than of "packages with subdirectories".

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
doc/automake.texi