bug-make
[Top][All Lists]
Advanced

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

Re: make handling of prerequisites that interlock?


From: Ben Pfaff
Subject: Re: make handling of prerequisites that interlock?
Date: Tue, 05 Apr 2005 09:05:34 -0700
User-agent: Gnus/5.1007 (Gnus v5.10.7) Emacs/21.4 (gnu/linux)

Ted Stern <address@hidden> writes:

> On  4 Apr 2005 at 13:56 UTC-0700, Ben Pfaff wrote:
>> I'm having some trouble with a set of dependencies that
>> indirectly depend on a common file.  Here's a minimal makefile
>> that demonstrates the problem:

[...]

>> # Turn off implicit rules to make `make -d' output easier to read.
>> .SUFFIXES:
>> %: %,v
>> %: RCS/%,v
>> %: RCS/%
>> %: s.%
>> %: SCCS/s.%
>
> This is a bit of overkill.  I would recommend instead to always use
> the -R command line flag, which turns off all built-in rules and
> variables.  It is sort of like declaring IMPLICIT NONE in Fortran ;-).

This is simply part of my stripped-down example.  It is not
anything I would use in practice.  (However, I was not aware of
-R before.)

>> ----------------------------------------------------------------------
>>
>> When I run this in a tight loop, as with
>>
>>     rm -f foo
>>     touch x d
>>     while ! grep newer foo; do 
>>         make clean > /dev/null
>>         make > /dev/null
>>         echo x > x
>>         make -d > foo
>>     done
>>
>> it typically iterates for a few seconds (with most iterations not
>> seeing any change in file times, presumably because everything
>> happens too fast), and then stops with this output in foo:
>
> I can bet you're going to have problems here!  Why are you doing this?

To reliably demonstrate a problem that I have seen elsewhere in
other circumstances.

> I'd also recommend trying a different filesystem.  Reiserfs, for
> example, handles small files better.

Why do you think this issue is related to small file handling?
-- 
"Debian for hackers, Red Hat for suits, Slackware for loons."
--CmdrTaco <URL:http://slashdot.org/articles/99/03/22/0928207.shtml>




reply via email to

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