build/docs/mozbuild/dumbmake.rst

Wed, 31 Dec 2014 06:09:35 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 06:09:35 +0100
changeset 0
6474c204b198
permissions
-rw-r--r--

Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.

     1 dumbmake
     2 ========
     4 *dumbmake* is a simple dependency tracker for make.
     6 It turns lists of make targets into longer lists of make targets that
     7 include dependencies.  For example:
     9     netwerk, package
    11 might be turned into
    13     netwerk, netwerk/build, toolkit/library, package
    15 The dependency list is read from the plain text file
    16 `topsrcdir/build/dumbmake-dependencies`.  The format best described by
    17 example:
    19     build_this
    20         when_this_changes
    22 Interpret this to mean that `build_this` is a dependency of
    23 `when_this_changes`.  More formally, a line (CHILD) indented more than
    24 the preceding line (PARENT) means that CHILD should trigger building
    25 PARENT.  That is, building CHILD will trigger building first CHILD and
    26 then PARENT.
    28 This structure is recursive:
    30     build_this_when_either_change
    31         build_this_only_when
    32             this_changes
    34 This means that `build_this_when_either_change` is a dependency of
    35 `build_this_only_when` and `this_changes`, and `build_this_only_when`
    36 is a dependency of `this_changes`.  Building `this_changes` will build
    37 first `this_changes`, then `build_this_only_when`, and finally
    38 `build_this_when_either_change`.

mercurial