Thank you Paul for the suggestions. Will think over them. Thanks for the help.
On Tue, Dec 17, 2019 at 9:03 PM Paul Smith <psm...@gnu.org> wrote: > On Tue, 2019-12-17 at 20:44 +0530, nikhil jain wrote: > > No, I do not want to delete the object file before sending the target > > out. That's not how make should work or I should make it work. > > That is simply not true. > > In virtually all cases rebuilding a target will involve deleting the old > one in some fashion. Most reliable build systems will create the target as > a different file then atomically rename it to its final name, so that if > the command is killed while the target is half-written it doesn't corrupt > the next build. > > It's absolutely fine if the recipe decides to delete the target explicitly > before starting to rebuild it and a great many recipes work exactly like > this. The old file will not be used anyway if the recipe fails, nor should > you want it to be since it's known to be out of date! > > > It is issue with NFS stale mounts which seems to be resolved if we open > > the file again according to NFS specs (mentioned in another email). > > As I haven't seen the actual code you're using I can't say for sure but in > general I'm leery of adding extra overhead to every check of every target > to handle an obscure case that can't actually happen with standard make. > >