Thank you everybody for the advanced discussion from which I learnt a lot. To answer Eli's question about the usage situation, I had a target which was a .tar file, and it's prerequisites were symbolic links put in one directory and pointing to various places.
Even though the filesystem supports sub-second timestamps, the tar utility making the target did not and half of the time rounds the time backwards to the nearest second. However, the ln -s command sets up the modify timestamp of the link to sub-second resolution. And I was using MAKEFLAGS := -LrR so that the timestamps of the links themselves mattered. So I would build, .tar file gets created, and then I build again without any other changes, sometimes gets created again based on the backwards rounding. As for .LOW_RESOLUTION_TIME, it is a recent feature, I am actually using emake, mostly compatible with make, but not necessarily yet available or installed by IT on my server with the latest revision compatibility of GNU Make. Can't use .LOW_RESOLUTION_TIME yet. My current solution is to just put sleep 1 when I need it - this problem only happens in recipes which do not have to be executed fast. _______________________________________________ Help-make mailing list [email protected] https://lists.gnu.org/mailman/listinfo/help-make
