On 10/09/2015 07:02 PM, Ruslan Baratov wrote:
> On 10-Oct-15 01:00, Ruslan Baratov via cmake-developers wrote:
>> cmFileTimeComparisonInternal::TimesDiffer use only limited number of
>> digits of timestamp and used in install step.
>>
> And the main difference is that it affects Linux platform too

IIRC that is done for the case that one installs from one
filesystem to another and they each have different timestamp
resolution.  If we don't round the times then they may always
differ and inefficiently re-install everything every time.

Ideally we would detect the resolution available on each
filesystem and truncate only to the lower resolution of the
two.  Perhaps one could at least detect when the source and
destination are on the same filesystem and do no truncation.

Another approach would be to try writing the destination
file time to see if it changes.  If so then re-install
and set the time again.  This would happen only when really
on filesystems with different time resolutions because
otherwise the file times would match.  This way a failure
to re-install would occur only on a truly 1s filesystem.

-Brad

-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake-developers

Reply via email to