DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH PRINT BOOK
 

(make.info) Double-Colon

Info Catalog (make.info) Static Pattern (make.info) Rules (make.info) Automatic Prerequisites
 
 Double-Colon Rules
 ==================
 
    "Double-colon" rules are rules written with `::' instead of `:'
 after the target names.  They are handled differently from ordinary
 rules when the same target appears in more than one rule.
 
    When a target appears in multiple rules, all the rules must be the
 same type: all ordinary, or all double-colon.  If they are
 double-colon, each of them is independent of the others.  Each
 double-colon rule's commands are executed if the target is older than
 any prerequisites of that rule.  This can result in executing none,
 any, or all of the double-colon rules.
 
    Double-colon rules with the same target are in fact completely
 separate from one another.  Each double-colon rule is processed
 individually, just as rules with different targets are processed.
 
    The double-colon rules for a target are executed in the order they
 appear in the makefile.  However, the cases where double-colon rules
 really make sense are those where the order of executing the commands
 would not matter.
 
    Double-colon rules are somewhat obscure and not often very useful;
 they provide a mechanism for cases in which the method used to update a
 target differs depending on which prerequisite files caused the update,
 and such cases are rare.
 
    Each double-colon rule should specify commands; if it does not, an
 implicit rule will be used if one applies.   Using Implicit Rules
 Implicit Rules.
 
Info Catalog (make.info) Static Pattern (make.info) Rules (make.info) Automatic Prerequisites
automatically generated byinfo2html