%% "Chris Chiasson" <[EMAIL PROTECTED]> writes:

  cc> How can I express a relationship in make that says "any one of 'these
  cc> files' can be made with 'command', but 'command' makes all of 'these
  cc> files' at once, so if you execute this rule, you don't need to run it
  cc> again"?

If your targets are related by some part of their filename (and,
ideally, also related to the file they're built from that way) then you
can use a pattern rule.  Pattern rules with multiple targets have the
quality you're looking for:

    %.c %.h : %.in

etc.

  cc> What I am doing right now is equivalent to:
  cc> falsetarget : dep
  cc>         command to generate all targets
  cc>         touch falsetarget

Something like this is the only way to do it if the targets have no
relationship that can be expressed as a pattern.  Generally the best way
is something like:

    target1 target2: falsetarget ;

    falsetarget: dep
            command to generate all targets
            @touch $@

-- 
-------------------------------------------------------------------------------
 Paul D. Smith <[EMAIL PROTECTED]>          Find some GNU make tips at:
 http://www.gnu.org                      http://make.paulandlesley.org
 "Please remain calm...I may be mad, but I am a professional." --Mad Scientist


_______________________________________________
Help-make mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/help-make

Reply via email to