On Wed, Dec 18, 2013 at 11:40 PM, erik quanstrom 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