Hi Paul, Am Thu, 9 Dec 2010 17:13:11 -0500 schrieb Paul Smith <[email protected]>:
> It's not about whether a timestamp is higher; it's about whether it's > high-resolution (that is, the sub-second part of the timestamp is set) > or not. > > Basically if you declare a target to have a low-resolution timestamp, > then make goes and stats the file and sees that the timestamp actually > has a non-0 subsecond element, you get this warning. > > Make is warning you that even though you told it this file should be > treated as low-resolution, in fact it's got high-resolution > timestamping. > > Maybe this warning is not really useful; we'd have to think carefully > about the various use scenarios to determine that. we are using .LOW_RESOLUTION_TIME in our build, where we are build on a lot of platforms (Solaris Intel/Sparc, Linux, OSX, Cygwin ...). We Use cp -p/touch -r there, but we cannot be sure about having good timestamps because it depends on the filesystems (which might be different between source and destination), the version of cp/touch and lots of other things. It can not even be safely found out in ./configure, if a setup allows for good cp -p behaviour. Currently we have the following situation: - System behaves good with cp -p and has hires time. The user will see lots of warnings but can silence them by setting a variable which disables .LOW_RESOLUTION_TIME. - System behaves bad with cp -p and has lowres time. Everything is fine in the default. - System behaves good with cp -p and has lowres time. Everything is fine in the default. - System behaves bad with cp -p and has highres time. The user will see lots of warnings and will likely disable them by setting the variable. Then he will see useless rebuilds, which is even worse. It would be great if one could at least silence the warning by setting some special variable or target. Best Regards, Bjoern _______________________________________________ Help-make mailing list [email protected] http://lists.gnu.org/mailman/listinfo/help-make
