Dear folks,

Today I found an interesting problem.
I have a Debian i386 Linux. I've issued the following commands:
$ touch --date=1970-01-01 lgconfig.h
$ make -n lgconfig.h

Make has complained:
make: *** Warning: File `lgconfig.h' has modification time in the future
(1970-01-01 00:00:00 > 2000-09-19 14:49:02)
make: `lgconfig.h' is up to date.
make: warning:  Clock skew detected.  Your build may be incomplete.


My timezone is CET DST (GMT+0200).
Touch set the mtime to -3600==4294963696==0xfffff1f0.
However make interprets this as a future date.
Touch thinks unix time signed, make regards it as unsigned.

Yes, I understand the mechanism and this is not a complaint.
I've just found funny the warning from the make. :-)

However 'touch' might issue a warning,
that times in the 0x80000000-0xffffffff range are ambigous.

Generally time handling looks a bit inconsistent
'ls' and 'find' also regards time 0xfffff1f0 being in the past.
Is 'make' the only program thinking it in the future?

Regards

Gabor
----
Versions:

$ touch --version
touch (GNU fileutils) 4.0l
...
$ make --version
GNU Make version 3.79.1, ...
_______________________________________________
Bug-fileutils mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/bug-fileutils

Reply via email to