bug-make
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug #40056] make should automatically detect targets with low resolutio


From: Paul D. Smith
Subject: [bug #40056] make should automatically detect targets with low resolution timestamps
Date: Sun, 22 Sep 2013 19:15:04 +0000
User-agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/29.0.1547.76 Safari/537.36

Follow-up Comment #2, bug #40056 (project make):

My concern about this patch is that there are plenty of examples of files
which have an NS field of 0, even on ext4 filesystems which support sub-second
timestamps.  This could be true just by chance, but it's actually true much
more often because many tools do not support sub-second timestamps.  For
example, the tar format has no facility for it.  For a long time although you
could retrieve sub-second timestamp information with stat(2), there was no way
to _set_ it, so programs like touch, cp -p, etc. could not set anything but
full second timestamps.  Etc.

I wrote a little program to print files with a 0 NS field on my ext4 partition
and there were a LOT of them.

What your patch does is always round up timestamps to the next second, if NS
== 0.  As far as I can see this would not be what you want.  If you had a file
with a highres timestamp of x.1 and another file with a timestamp of x.0, then
the change would assume that the x.0 should be x+1, or newer than the first
one.

I just don't think this is right.

One option would be to allow the .LOW_RESOLUTION_TIME target to be defined
with no prerequisites, which would mean that all targets should be assumed to
have lowres timestamps.  In this mode of course we wouldn't print any warnings
about it.

    _______________________________________________________

Reply to this item at:

  <http://savannah.gnu.org/bugs/?40056>

_______________________________________________
  Message sent via/by Savannah
  http://savannah.gnu.org/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]