On Tue, 2008-03-04 at 08:50 +0100, Per Jessen wrote:
> Didn't solve the problem though - when run in parallel, a lot of the
> jobs are still not run.

There's one other possibility.  GNU make bases its rebuild decisions
entirely on timestamps.  Some filesystems (network filesystems like NFS
in particular, but some local ones as well) do not support sub-second
timestamps.  If your "build" operations are fast enough that GNU make
doesn't think the target was updated, based on its timestamps, then it
won't consider the target remade and it won't consider targets that
depend on it to be out-of-date.

This is important; many rules use this behavior to avoid updating files
that seem to need updating due to timestamps, but end up not needing to
be updated.  If this saves a significant amount of build time it can be
worth it.

-- 
-------------------------------------------------------------------------------
 Paul D. Smith <[EMAIL PROTECTED]>          Find some GNU make tips at:
 http://www.gnu.org                      http://make.mad-scientist.us
 "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