%% "Kong, Michelle" <[EMAIL PROTECTED]> writes: km> I started using GNU make version 3.79.1 on Linux machine and got km> some warning messages that I don't understand: km> make[3]: *** Warning: File `Makefile.real' has modification time in the km> future (2003-03-20 10:18:18 > 2003-03-20 10:18:17) km> make[3]: warning: Clock skew detected. Your build may be incomplete. km> We've checked the machine times for each machine that's involved km> here, there's not time synchronization issue for all the machines.
Yes there is... if you get this error you can be very sure that the time on the system where the files live and the time on the system where the build is being performed, are not in sync. They may be off by only half a second or so, which means half the time they will appear to have the same time and half the time they won't. km> Then I tried using GNU make version 3.80 on Solaris SunOS 5.8 and got km> similar warning messages: km> make[3]: Warning: File `main/obj/all_obj' has modification time 0.016 s in the future km> make[3]: warning: Clock skew detected. Your build may be incomplete. km> These messages are not shown each time I compile, but they do show km> every now and then. And for the second type of messages, I've km> even seen "modification time 0.0033 s in the future". Yes, this is because some newer filesystems store timestamps at a sub-second granularity, unlike traditional UNIX filesystems. km> I want to know why are these messages got displayed? It means that after make built a target it checked the time last modified on the target file, and that time was in the future compared to the system clock. It means that the system clocks on the fileserver and the build server are not synced up. This is very bad because it means that targets that list this one as a prerequisite might not be built when they should be. km> How can I disable the display of these type of messages? Either fix the problem by running something like NTP to synchronize the times of your systems, or edit to code and comment them out. km> Can I set some kind of range, say, anything less than 2 second can km> be ignored? No, not yet. On the Solaris box you can disable subsecond timestamps so make only considers timestamps at the granularity of 1 second (see the README file and the manual). But you cannot change it other than that (except by editing the code of course). -- ------------------------------------------------------------------------------- Paul D. Smith <[EMAIL PROTECTED]> Find some GNU make tips at: http://www.gnu.org http://make.paulandlesley.org "Please remain calm...I may be mad, but I am a professional." --Mad Scientist _______________________________________________ Help-make mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/help-make
