help-make
[Top][All Lists]
Advanced

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

RE: updating target at the end of recipe, after updating prerequisites,


From: Paul Smith
Subject: RE: updating target at the end of recipe, after updating prerequisites, might not work?
Date: Sun, 13 Nov 2011 22:29:56 -0500

On Fri, 2011-10-07 at 08:12 -0700, Mark Galeck (CW) wrote:
> Why would the modify timestamp be rounded to the nearest second???
> This is what's causing the problem.  It is always like that for this
> file.

The common C runtime API, although its data structures have been extened
to allow reporting of sub-second timestamps, doesn't have a portable API
for _setting_ sub-second timestamps.  Odd, but true.

So you'll see that most UNIX utilities that specifically set timestamps,
like "cp -p", "touch", etc. do not preserve sub-second timestamps and
are rounded to a second.  The only way a sub-second timestamp can be
provided is by updating the file and allowing the filesystem software to
set it.

So if you run "touch xyz" then xyz will usually have a timestamp of an
even second, but if you run "echo foo > xyz" (or some other operation
that modifies xyz but doesn't set the time explicitly) then xyz will
have an appropriate sub-second timestamp.

-- 
-------------------------------------------------------------------------------
 Paul D. Smith <address@hidden>          Find some GNU make tips at:
 http://www.gnu.org                      http://make.mad-scientist.net
 "Please remain calm...I may be mad, but I am a professional." --Mad Scientist




reply via email to

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