[Top][All Lists]

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

Re: GNU Make 3.80 problem on Solaris 8

From: Paul D. Smith
Subject: Re: GNU Make 3.80 problem on Solaris 8
Date: Mon, 12 Dec 2005 19:25:37 -0500

%% Warren L Dodge <address@hidden> writes:

  wld> We are having a problem with GNU Make 3.80 on our Solaris 8
  wld> system. When using the same verion of GNU Make on a GNU Linux
  wld> system if works fine.

  wld> It was pointed out to me that an old copy of GNU make-3.70 worked
  wld> fine. Indeed it does. I took the source for the 3.70 and comiled
  wld> them the same way I have done the 3.80. The make-3.70 still works
  wld> as expected.

I suspect the problem is because your Solaris filesystem is supporting
sub-second timestamps, and your Linux filesystem is not.

GNU make, starting with 3.79 or something like that, will recognize
subsecond timestamps on those systems that support it.

Let's look:

  wld> %.db: orig/%.db
  wld>  @echo 'Importing $<'
  wld>  /bin/cp -p $< .

  wld> gmake all
  wld> Importing orig/file.db
  wld> /bin/cp -p orig/file.db .

Here, let's suppose that the timestamp on orig/file.db was 100.5.  After
the cp -p, the timestamp would be only 100, because "cp -p" (and tar,
and other methods of copying files that preserve timestamps) don't
preserve the sub-second parts.

So now the timestamp of file.db is 100 and the timestamp of orig/file.db
is 100.5, which is newer, so:

  wld> gmake all
  wld> Importing orig/file.db
  wld> /bin/cp -p orig/file.db .

Make copies it again.  You don't say what happens if you run it a third
time though: does make keep copying it?  Or stop?

You can look up the pseudo-target .LOW_RESOLUTION_TIME in the GNU make
manual for more information.


 Paul D. Smith <address@hidden>          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

reply via email to

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