On Wed, Dec 18, 2013 at 11:40 PM, erik quanstrom <quans...@quanstro.net>wrote:
>
>
> to be more explicit.  if a is built from b and mtime(a) <= mtime(b), then
> mk could fail to rebuild a when it needs to.  for correctness, mk must
> use <=
> not <.
>

I was thinking about the problem and actually, at least in all
circumstances I can think of, changing that one operation from <= to <
would fix the problem.  If the times are on the same second, I would never
have had time to change it.  This would fix the problem.  Perhaps this
functionality can be controlled by an environment variable like NPROC.

I think this is important as follows.  If you are working on a project,
edit some files, and then perform a mk, if files you haven't changed get
built, I for one would constantly question myself, about whether or not I
changed that file.  It would make things confusing.  Also, and perhaps more
importantly, it may occur that a very long build is dependant on a very
short preceding build.  So, the unnecessary rebuild of the fast process can
unnecessarily trigger the very long process.  This really needs addressing
for that reason especially IMO.

Thanks.

Blake

Reply via email to